{
    "name": "datadog",
    "displayName": "Datadog",
    "description": "A Pulumi package for creating and managing Datadog resources.",
    "keywords": [
        "pulumi",
        "datadog"
    ],
    "homepage": "https://pulumi.io",
    "license": "Apache-2.0",
    "attribution": "This Pulumi package is based on the [`datadog` Terraform Provider](https://github.com/DataDog/terraform-provider-datadog).",
    "repository": "https://github.com/pulumi/pulumi-datadog",
    "meta": {
        "moduleFormat": "(.*)(?:/[^/]*)"
    },
    "language": {
        "csharp": {
            "packageReferences": {
                "Pulumi": "3.*"
            },
            "namespaces": {
                "aws": "Aws",
                "azure": "Azure",
                "datadog": "Datadog",
                "gcp": "Gcp",
                "opsgenie": "OpsGenie",
                "pagerduty": "PagerDuty",
                "slack": "Slack"
            },
            "compatibility": "tfbridge20",
            "respectSchemaVersion": true
        },
        "go": {
            "importBasePath": "github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog",
            "generateResourceContainerTypes": true,
            "generateExtraInputTypes": true,
            "respectSchemaVersion": true
        },
        "nodejs": {
            "packageDescription": "A Pulumi package for creating and managing Datadog resources.",
            "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/DataDog/terraform-provider-datadog)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-datadog` repo](https://github.com/pulumi/pulumi-datadog/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-datadog` repo](https://github.com/DataDog/terraform-provider-datadog/issues).",
            "devDependencies": {
                "@types/node": "^10.0.0"
            },
            "compatibility": "tfbridge20",
            "disableUnionOutputTypes": true,
            "respectSchemaVersion": true
        },
        "python": {
            "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/DataDog/terraform-provider-datadog)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-datadog` repo](https://github.com/pulumi/pulumi-datadog/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-datadog` repo](https://github.com/DataDog/terraform-provider-datadog/issues).",
            "compatibility": "tfbridge20",
            "respectSchemaVersion": true,
            "pyproject": {
                "enabled": true
            }
        }
    },
    "config": {
        "variables": {
            "apiKey": {
                "type": "string",
                "description": "(Required unless validate is false) Datadog API key. This can also be set via the DD_API_KEY environment variable.",
                "secret": true
            },
            "apiUrl": {
                "type": "string",
                "description": "The API URL. This can also be set via the DD_HOST environment variable, and defaults to `https://api.datadoghq.com`. Note that this URL must not end with the `/api/` path. For example, `https://api.datadoghq.com/` is a correct value, while `https://api.datadoghq.com/api/` is not. And if you're working with \"EU\" version of Datadog, use `https://api.datadoghq.eu/`. Other Datadog region examples: `https://api.us5.datadoghq.com/`, `https://api.us3.datadoghq.com/` and `https://api.ddog-gov.com/`. See https://docs.datadoghq.com/getting_started/site/ for all available regions."
            },
            "appKey": {
                "type": "string",
                "description": "(Required unless validate is false) Datadog APP key. This can also be set via the DD_APP_KEY environment variable.",
                "secret": true
            },
            "awsAccessKeyId": {
                "type": "string",
                "description": "The AWS access key ID; used for cloud-provider-based authentication. This can also be set using the `AWS_ACCESS_KEY_ID` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.",
                "secret": true
            },
            "awsSecretAccessKey": {
                "type": "string",
                "description": "The AWS secret access key; used for cloud-provider-based authentication. This can also be set using the `AWS_SECRET_ACCESS_KEY` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.",
                "secret": true
            },
            "awsSessionToken": {
                "type": "string",
                "description": "The AWS session token; used for cloud-provider-based authentication. This can also be set using the `AWS_SESSION_TOKEN` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e and using temporary credentials.",
                "secret": true
            },
            "cloudProviderRegion": {
                "type": "string",
                "description": "The cloud provider region specifier; used for cloud-provider-based authentication. For example, `us-east-1` for AWS."
            },
            "cloudProviderType": {
                "type": "string",
                "description": "Specifies the cloud provider used for cloud-provider-based authentication, enabling keyless access without API or app keys. Only [\u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e] is supported. This feature is in Preview. If you'd like to enable it for your organization, contact [support](https://docs.datadoghq.com/help/)."
            },
            "defaultTags": {
                "$ref": "#/types/datadog:config/defaultTags:defaultTags",
                "description": "[Experimental - Logs Indexes, Logs Pipelines, Monitors Security Monitoring Rules, and Service Level Objectives only] Configuration block containing settings to apply default resource tags across all resources."
            },
            "httpClientRetryBackoffBase": {
                "type": "integer",
                "description": "The HTTP request retry back off base. Defaults to 2."
            },
            "httpClientRetryBackoffMultiplier": {
                "type": "integer",
                "description": "The HTTP request retry back off multiplier. Defaults to 2."
            },
            "httpClientRetryEnabled": {
                "type": "string",
                "description": "Enables request retries on HTTP status codes 429 and 5xx. Valid values are [\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e]. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e."
            },
            "httpClientRetryMaxRetries": {
                "type": "integer",
                "description": "The HTTP request maximum retry number. Defaults to 3."
            },
            "httpClientRetryTimeout": {
                "type": "integer",
                "description": "The HTTP request retry timeout period. Defaults to 60 seconds."
            },
            "orgUuid": {
                "type": "string",
                "description": "The organization UUID; used for cloud-provider-based authentication. See the [Datadog API documentation](https://docs.datadoghq.com/api/v1/organizations/) for more information."
            },
            "validate": {
                "type": "string",
                "description": "Enables validation of the provided API key during provider initialization. Valid values are [\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e]. Default is true. When false,\u003cspan pulumi-lang-nodejs=\" apiKey \" pulumi-lang-dotnet=\" ApiKey \" pulumi-lang-go=\" apiKey \" pulumi-lang-python=\" api_key \" pulumi-lang-yaml=\" apiKey \" pulumi-lang-java=\" apiKey \"\u003e apiKey \u003c/span\u003ewon't be checked."
            }
        }
    },
    "types": {
        "datadog:aws/IntegrationAccountAuthConfig:IntegrationAccountAuthConfig": {
            "properties": {
                "awsAuthConfigKeys": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountAuthConfigAwsAuthConfigKeys:IntegrationAccountAuthConfigAwsAuthConfigKeys",
                    "description": "Datadog will use the provided AWS Access Key ID and Secret Access Key to authenticate to your account.\n"
                },
                "awsAuthConfigRole": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountAuthConfigAwsAuthConfigRole:IntegrationAccountAuthConfigAwsAuthConfigRole"
                }
            },
            "type": "object"
        },
        "datadog:aws/IntegrationAccountAuthConfigAwsAuthConfigKeys:IntegrationAccountAuthConfigAwsAuthConfigKeys": {
            "properties": {
                "accessKeyId": {
                    "type": "string",
                    "description": "AWS Access Key ID\n"
                },
                "secretAccessKey": {
                    "type": "string",
                    "description": "AWS Secret Access Key. This value is write-only; changes made outside of Terraform will not be drift-detected.\n",
                    "secret": true
                }
            },
            "type": "object"
        },
        "datadog:aws/IntegrationAccountAuthConfigAwsAuthConfigRole:IntegrationAccountAuthConfigAwsAuthConfigRole": {
            "properties": {
                "externalId": {
                    "type": "string",
                    "description": "AWS IAM external ID for associated role. If omitted, one is generated.\n"
                },
                "roleName": {
                    "type": "string",
                    "description": "AWS IAM role name.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "externalId"
                    ]
                }
            }
        },
        "datadog:aws/IntegrationAccountAwsRegions:IntegrationAccountAwsRegions": {
            "properties": {
                "includeAll": {
                    "type": "boolean",
                    "description": "Include all regions. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "includeOnlies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Include only these regions.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "includeAll"
                    ]
                }
            }
        },
        "datadog:aws/IntegrationAccountLogsConfig:IntegrationAccountLogsConfig": {
            "properties": {
                "lambdaForwarder": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountLogsConfigLambdaForwarder:IntegrationAccountLogsConfigLambdaForwarder",
                    "description": "Leave empty to omit logs config.\n"
                }
            },
            "type": "object"
        },
        "datadog:aws/IntegrationAccountLogsConfigLambdaForwarder:IntegrationAccountLogsConfigLambdaForwarder": {
            "properties": {
                "lambdas": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of Datadog Lambda Log Forwarder ARNs in your AWS account. Defaults to `[]`.\n"
                },
                "logSourceConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountLogsConfigLambdaForwarderLogSourceConfig:IntegrationAccountLogsConfigLambdaForwarderLogSourceConfig",
                    "description": "Configure log source collection for your Datadog Forwarder Lambda functions.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of service IDs set to enable automatic log collection. Use \u003cspan pulumi-lang-nodejs=\"`datadog.aws.getIntegrationAvailableLogsServices`\" pulumi-lang-dotnet=\"`datadog.aws.getIntegrationAvailableLogsServices`\" pulumi-lang-go=\"`aws.getIntegrationAvailableLogsServices`\" pulumi-lang-python=\"`aws_get_integration_available_logs_services`\" pulumi-lang-yaml=\"`datadog.aws.getIntegrationAvailableLogsServices`\" pulumi-lang-java=\"`datadog.aws.getIntegrationAvailableLogsServices`\"\u003e`datadog.aws.getIntegrationAvailableLogsServices`\u003c/span\u003e data source or [the AWS Logs Integration API](https://docs.datadoghq.com/api/latest/aws-logs-integration/?#get-list-of-aws-log-ready-services) to get allowed values. Defaults to `[]`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "lambdas",
                        "sources"
                    ]
                }
            }
        },
        "datadog:aws/IntegrationAccountLogsConfigLambdaForwarderLogSourceConfig:IntegrationAccountLogsConfigLambdaForwarderLogSourceConfig": {
            "properties": {
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:aws/IntegrationAccountLogsConfigLambdaForwarderLogSourceConfigTagFilter:IntegrationAccountLogsConfigLambdaForwarderLogSourceConfigTagFilter"
                    },
                    "description": "AWS Logs Collection tag filters list.\n"
                }
            },
            "type": "object"
        },
        "datadog:aws/IntegrationAccountLogsConfigLambdaForwarderLogSourceConfigTagFilter:IntegrationAccountLogsConfigLambdaForwarderLogSourceConfigTagFilter": {
            "properties": {
                "source": {
                    "type": "string",
                    "description": "The AWS service for which the tag filters defined in \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e will be applied.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The AWS resource tags to filter on for the service specified by \u003cspan pulumi-lang-nodejs=\"`source`\" pulumi-lang-dotnet=\"`Source`\" pulumi-lang-go=\"`source`\" pulumi-lang-python=\"`source`\" pulumi-lang-yaml=\"`source`\" pulumi-lang-java=\"`source`\"\u003e`source`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "source",
                "tags"
            ]
        },
        "datadog:aws/IntegrationAccountMetricsConfig:IntegrationAccountMetricsConfig": {
            "properties": {
                "automuteEnabled": {
                    "type": "boolean",
                    "description": "Enable EC2 automute for AWS metrics Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "collectCloudwatchAlarms": {
                    "type": "boolean",
                    "description": "Enable CloudWatch alarms collection Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "collectCustomMetrics": {
                    "type": "boolean",
                    "description": "Enable custom metrics collection Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enable AWS metrics collection Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "namespaceFilters": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountMetricsConfigNamespaceFilters:IntegrationAccountMetricsConfigNamespaceFilters",
                    "description": "AWS metrics namespace filters. Defaults to a pre-set \u003cspan pulumi-lang-nodejs=\"`excludeOnly`\" pulumi-lang-dotnet=\"`ExcludeOnly`\" pulumi-lang-go=\"`excludeOnly`\" pulumi-lang-python=\"`exclude_only`\" pulumi-lang-yaml=\"`excludeOnly`\" pulumi-lang-java=\"`excludeOnly`\"\u003e`excludeOnly`\u003c/span\u003e list if block is empty.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:aws/IntegrationAccountMetricsConfigTagFilter:IntegrationAccountMetricsConfigTagFilter"
                    },
                    "description": "AWS Metrics Collection tag filters list. The array of custom AWS resource tags (in the form `key:value`) defines a filter that Datadog uses when collecting metrics from a specified service. Wildcards, such as `?` (match a single character) and `*` (match multiple characters), and exclusion using `!` before the tag are supported. For EC2, only hosts that match one of the defined tags will be imported into Datadog. The rest will be ignored. For example, `env:production,instance-type:c?.*,!region:us-east-1`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "automuteEnabled",
                        "collectCloudwatchAlarms",
                        "collectCustomMetrics",
                        "enabled"
                    ]
                }
            }
        },
        "datadog:aws/IntegrationAccountMetricsConfigNamespaceFilters:IntegrationAccountMetricsConfigNamespaceFilters": {
            "properties": {
                "excludeOnlies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Exclude only these namespaces from metrics collection. Use \u003cspan pulumi-lang-nodejs=\"`datadog.aws.getIntegrationAvailableNamespaces`\" pulumi-lang-dotnet=\"`datadog.aws.getIntegrationAvailableNamespaces`\" pulumi-lang-go=\"`aws.getIntegrationAvailableNamespaces`\" pulumi-lang-python=\"`aws_get_integration_available_namespaces`\" pulumi-lang-yaml=\"`datadog.aws.getIntegrationAvailableNamespaces`\" pulumi-lang-java=\"`datadog.aws.getIntegrationAvailableNamespaces`\"\u003e`datadog.aws.getIntegrationAvailableNamespaces`\u003c/span\u003e data source to get allowed values. Defaults to `[\"AWS/SQS\", \"AWS/ElasticMapReduce\", \"AWS/Usage\"]`. `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default to reduce your AWS CloudWatch costs from `GetMetricData` API calls.\n"
                },
                "includeOnlies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Include only these namespaces for metrics collection. Use \u003cspan pulumi-lang-nodejs=\"`datadog.aws.getIntegrationAvailableNamespaces`\" pulumi-lang-dotnet=\"`datadog.aws.getIntegrationAvailableNamespaces`\" pulumi-lang-go=\"`aws.getIntegrationAvailableNamespaces`\" pulumi-lang-python=\"`aws_get_integration_available_namespaces`\" pulumi-lang-yaml=\"`datadog.aws.getIntegrationAvailableNamespaces`\" pulumi-lang-java=\"`datadog.aws.getIntegrationAvailableNamespaces`\"\u003e`datadog.aws.getIntegrationAvailableNamespaces`\u003c/span\u003e data source to get allowed values.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "excludeOnlies"
                    ]
                }
            }
        },
        "datadog:aws/IntegrationAccountMetricsConfigTagFilter:IntegrationAccountMetricsConfigTagFilter": {
            "properties": {
                "namespace": {
                    "type": "string",
                    "description": "The AWS service for which the tag filters defined in \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e will be applied.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The AWS resource tags to filter on for the service specified by \u003cspan pulumi-lang-nodejs=\"`namespace`\" pulumi-lang-dotnet=\"`Namespace`\" pulumi-lang-go=\"`namespace`\" pulumi-lang-python=\"`namespace`\" pulumi-lang-yaml=\"`namespace`\" pulumi-lang-java=\"`namespace`\"\u003e`namespace`\u003c/span\u003e. Defaults to `[]`.\n"
                }
            },
            "type": "object",
            "required": [
                "namespace"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "namespace",
                        "tags"
                    ]
                }
            }
        },
        "datadog:aws/IntegrationAccountResourcesConfig:IntegrationAccountResourcesConfig": {
            "properties": {
                "cloudSecurityPostureManagementCollection": {
                    "type": "boolean",
                    "description": "Enable Cloud Security Management to scan AWS resources for vulnerabilities, misconfigurations, identity risks, and compliance violations. Requires \u003cspan pulumi-lang-nodejs=\"`extendedCollection`\" pulumi-lang-dotnet=\"`ExtendedCollection`\" pulumi-lang-go=\"`extendedCollection`\" pulumi-lang-python=\"`extended_collection`\" pulumi-lang-yaml=\"`extendedCollection`\" pulumi-lang-java=\"`extendedCollection`\"\u003e`extendedCollection`\u003c/span\u003e to be set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "extendedCollection": {
                    "type": "boolean",
                    "description": "Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for \u003cspan pulumi-lang-nodejs=\"`cloudSecurityPostureManagementCollection`\" pulumi-lang-dotnet=\"`CloudSecurityPostureManagementCollection`\" pulumi-lang-go=\"`cloudSecurityPostureManagementCollection`\" pulumi-lang-python=\"`cloud_security_posture_management_collection`\" pulumi-lang-yaml=\"`cloudSecurityPostureManagementCollection`\" pulumi-lang-java=\"`cloudSecurityPostureManagementCollection`\"\u003e`cloudSecurityPostureManagementCollection`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "cloudSecurityPostureManagementCollection",
                        "extendedCollection"
                    ]
                }
            }
        },
        "datadog:aws/IntegrationAccountTracesConfig:IntegrationAccountTracesConfig": {
            "properties": {
                "xrayServices": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountTracesConfigXrayServices:IntegrationAccountTracesConfigXrayServices",
                    "description": "AWS X-Ray services to collect traces from. Defaults to \u003cspan pulumi-lang-nodejs=\"`includeOnly`\" pulumi-lang-dotnet=\"`IncludeOnly`\" pulumi-lang-go=\"`includeOnly`\" pulumi-lang-python=\"`include_only`\" pulumi-lang-yaml=\"`includeOnly`\" pulumi-lang-java=\"`includeOnly`\"\u003e`includeOnly`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:aws/IntegrationAccountTracesConfigXrayServices:IntegrationAccountTracesConfigXrayServices": {
            "properties": {
                "includeAll": {
                    "type": "boolean",
                    "description": "Include all services.\n"
                },
                "includeOnlies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Include only these services. Defaults to `[]`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "includeOnlies"
                    ]
                }
            }
        },
        "datadog:aws/getIntegrationLogsServicesAwsLogsService:getIntegrationLogsServicesAwsLogsService": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The id of the AWS log service.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The name of the AWS log service.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "label"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:azure/IntegrationResourceProviderConfig:IntegrationResourceProviderConfig": {
            "properties": {
                "metricsEnabled": {
                    "type": "boolean"
                },
                "namespace": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "metricsEnabled",
                "namespace"
            ]
        },
        "datadog:config/defaultTags:defaultTags": {
            "properties": {
                "tags": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "[Experimental - Logs Indexes, Logs Pipelines, Monitors Security Monitoring Rules, and Service Level Objectives only] Resource tags to be applied by default across all resources.\n"
                }
            },
            "type": "object"
        },
        "datadog:gcp/IntegrationMonitoredResourceConfig:IntegrationMonitoredResourceConfig": {
            "properties": {
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "type": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "filters",
                "type"
            ]
        },
        "datadog:gcp/IntegrationStsMetricNamespaceConfig:IntegrationStsMetricNamespaceConfig": {
            "properties": {
                "disabled": {
                    "type": "boolean"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "id": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "disabled",
                "filters",
                "id"
            ]
        },
        "datadog:gcp/IntegrationStsMonitoredResourceConfig:IntegrationStsMonitoredResourceConfig": {
            "properties": {
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "type": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "filters",
                "type"
            ]
        },
        "datadog:index/ActionConnectionAws:ActionConnectionAws": {
            "properties": {
                "assumeRole": {
                    "$ref": "#/types/datadog:index/ActionConnectionAwsAssumeRole:ActionConnectionAwsAssumeRole",
                    "description": "Configuration for an assume role AWS connection\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ActionConnectionAwsAssumeRole:ActionConnectionAwsAssumeRole": {
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "AWS account that the connection is created for. String length must be at least 1.\n"
                },
                "externalId": {
                    "type": "string",
                    "description": "External ID that specifies which connection can be used to assume the role\n"
                },
                "principalId": {
                    "type": "string",
                    "description": "AWS account that will assume the role\n"
                },
                "role": {
                    "type": "string",
                    "description": "Role to assume. String length must be at least 1.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "externalId",
                        "principalId"
                    ]
                }
            }
        },
        "datadog:index/ActionConnectionHttp:ActionConnectionHttp": {
            "properties": {
                "baseUrl": {
                    "type": "string",
                    "description": "Base HTTP url for the integration. String length must be at least 1.\n"
                },
                "tokenAuth": {
                    "$ref": "#/types/datadog:index/ActionConnectionHttpTokenAuth:ActionConnectionHttpTokenAuth",
                    "description": "Configuration for an HTTP connection that uses token auth\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ActionConnectionHttpTokenAuth:ActionConnectionHttpTokenAuth": {
            "properties": {
                "body": {
                    "$ref": "#/types/datadog:index/ActionConnectionHttpTokenAuthBody:ActionConnectionHttpTokenAuthBody",
                    "description": "Body for HTTP authentication\n"
                },
                "headers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ActionConnectionHttpTokenAuthHeader:ActionConnectionHttpTokenAuthHeader"
                    },
                    "description": "Header for HTTP authentication\n"
                },
                "tokens": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ActionConnectionHttpTokenAuthToken:ActionConnectionHttpTokenAuthToken"
                    },
                    "description": "Token for HTTP authentication\n"
                },
                "urlParameters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ActionConnectionHttpTokenAuthUrlParameter:ActionConnectionHttpTokenAuthUrlParameter"
                    },
                    "description": "URL parameter for HTTP authentication\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ActionConnectionHttpTokenAuthBody:ActionConnectionHttpTokenAuthBody": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "Serialized body content. String length must be at least 1.\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "Content type of the body. String length must be at least 1.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ActionConnectionHttpTokenAuthHeader:ActionConnectionHttpTokenAuthHeader": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Header name. String length must be at least 1.\n"
                },
                "value": {
                    "type": "string",
                    "description": "String length must be at least 1.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ActionConnectionHttpTokenAuthToken:ActionConnectionHttpTokenAuthToken": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Token name. String length must be at least 1.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Token type Valid values are `SECRET`.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Token value. String length must be at least 1.\n",
                    "secret": true
                }
            },
            "type": "object"
        },
        "datadog:index/ActionConnectionHttpTokenAuthUrlParameter:ActionConnectionHttpTokenAuthUrlParameter": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "URL parameter name. String length must be at least 1.\n"
                },
                "value": {
                    "type": "string",
                    "description": "URL parameter value. String length must be at least 1.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ApmRetentionFilterFilter:ApmRetentionFilterFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The search query - follow the span search syntax, use `AND` between tags and `\\` to escape special characters, use nanosecond for duration. Defaults to `\"*\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "query"
                    ]
                }
            }
        },
        "datadog:index/AppsecWafCustomRuleAction:AppsecWafCustomRuleAction": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Override the default action to take when the WAF custom rule would block.\n"
                },
                "parameters": {
                    "$ref": "#/types/datadog:index/AppsecWafCustomRuleActionParameters:AppsecWafCustomRuleActionParameters"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafCustomRuleActionParameters:AppsecWafCustomRuleActionParameters": {
            "properties": {
                "location": {
                    "type": "string",
                    "description": "The location to redirect to when the WAF custom rule triggers.\n"
                },
                "statusCode": {
                    "type": "integer",
                    "description": "The status code to return when the WAF custom rule triggers.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafCustomRuleCondition:AppsecWafCustomRuleCondition": {
            "properties": {
                "operator": {
                    "type": "string",
                    "description": "Operator to use for the WAF Condition.\n"
                },
                "parameters": {
                    "$ref": "#/types/datadog:index/AppsecWafCustomRuleConditionParameters:AppsecWafCustomRuleConditionParameters"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafCustomRuleConditionParameters:AppsecWafCustomRuleConditionParameters": {
            "properties": {
                "data": {
                    "type": "string",
                    "description": "Identifier of a list of data from the denylist. Can only be used as substitution from the list parameter.\n"
                },
                "inputs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafCustomRuleConditionParametersInput:AppsecWafCustomRuleConditionParametersInput"
                    }
                },
                "lists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of value to use with the condition. Only used with the phrase*match, !phrase*match, exact*match and !exact*match operator.\n"
                },
                "options": {
                    "$ref": "#/types/datadog:index/AppsecWafCustomRuleConditionParametersOptions:AppsecWafCustomRuleConditionParametersOptions"
                },
                "regex": {
                    "type": "string",
                    "description": "Regex to use with the condition. Only used with match*regex and !match*regex operator.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Store the captured value in the specified tag name. Only used with the\u003cspan pulumi-lang-nodejs=\" captureData \" pulumi-lang-dotnet=\" CaptureData \" pulumi-lang-go=\" captureData \" pulumi-lang-python=\" capture_data \" pulumi-lang-yaml=\" captureData \" pulumi-lang-java=\" captureData \"\u003e captureData \u003c/span\u003eoperator.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafCustomRuleConditionParametersInput:AppsecWafCustomRuleConditionParametersInput": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "Input from the request on which the condition should apply.\n"
                },
                "keyPaths": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specific path for the input.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafCustomRuleConditionParametersOptions:AppsecWafCustomRuleConditionParametersOptions": {
            "properties": {
                "caseSensitive": {
                    "type": "boolean",
                    "description": "Evaluate the value as case sensitive.\n"
                },
                "minLength": {
                    "type": "integer",
                    "description": "Only evaluate this condition if the value has a minimum amount of characters.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafCustomRuleScope:AppsecWafCustomRuleScope": {
            "properties": {
                "env": {
                    "type": "string",
                    "description": "The environment scope for the WAF custom rule.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The service scope for the WAF custom rule.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafExclusionFilterRulesTarget:AppsecWafExclusionFilterRulesTarget": {
            "properties": {
                "ruleId": {
                    "type": "string",
                    "description": "Target a single WAF rule based on its identifier.\n"
                },
                "tags": {
                    "$ref": "#/types/datadog:index/AppsecWafExclusionFilterRulesTargetTags:AppsecWafExclusionFilterRulesTargetTags"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafExclusionFilterRulesTargetTags:AppsecWafExclusionFilterRulesTargetTags": {
            "properties": {
                "category": {
                    "type": "string",
                    "description": "The category of the targeted WAF rules.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of the targeted WAF rules.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/AppsecWafExclusionFilterScope:AppsecWafExclusionFilterScope": {
            "properties": {
                "env": {
                    "type": "string",
                    "description": "Deploy on this environment.\n"
                },
                "service": {
                    "type": "string",
                    "description": "Deploy on this service.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/AwsCurConfigAccountFilters:AwsCurConfigAccountFilters": {
            "properties": {
                "excludedAccounts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of AWS account IDs to exclude from cost analysis. Only used when \u003cspan pulumi-lang-nodejs=\"`includeNewAccounts`\" pulumi-lang-dotnet=\"`IncludeNewAccounts`\" pulumi-lang-go=\"`includeNewAccounts`\" pulumi-lang-python=\"`include_new_accounts`\" pulumi-lang-yaml=\"`includeNewAccounts`\" pulumi-lang-java=\"`includeNewAccounts`\"\u003e`includeNewAccounts`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Cannot be used together with \u003cspan pulumi-lang-nodejs=\"`includedAccounts`\" pulumi-lang-dotnet=\"`IncludedAccounts`\" pulumi-lang-go=\"`includedAccounts`\" pulumi-lang-python=\"`included_accounts`\" pulumi-lang-yaml=\"`includedAccounts`\" pulumi-lang-java=\"`includedAccounts`\"\u003e`includedAccounts`\u003c/span\u003e.\n"
                },
                "includeNewAccounts": {
                    "type": "boolean",
                    "description": "Whether to automatically include new member accounts in your cost analysis. When \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, use \u003cspan pulumi-lang-nodejs=\"`excludedAccounts`\" pulumi-lang-dotnet=\"`ExcludedAccounts`\" pulumi-lang-go=\"`excludedAccounts`\" pulumi-lang-python=\"`excluded_accounts`\" pulumi-lang-yaml=\"`excludedAccounts`\" pulumi-lang-java=\"`excludedAccounts`\"\u003e`excludedAccounts`\u003c/span\u003e to specify accounts to exclude. When \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, use \u003cspan pulumi-lang-nodejs=\"`includedAccounts`\" pulumi-lang-dotnet=\"`IncludedAccounts`\" pulumi-lang-go=\"`includedAccounts`\" pulumi-lang-python=\"`included_accounts`\" pulumi-lang-yaml=\"`includedAccounts`\" pulumi-lang-java=\"`includedAccounts`\"\u003e`includedAccounts`\u003c/span\u003e to specify only the accounts to include.\n"
                },
                "includedAccounts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of AWS account IDs to include in cost analysis. Only used when \u003cspan pulumi-lang-nodejs=\"`includeNewAccounts`\" pulumi-lang-dotnet=\"`IncludeNewAccounts`\" pulumi-lang-go=\"`includeNewAccounts`\" pulumi-lang-python=\"`include_new_accounts`\" pulumi-lang-yaml=\"`includeNewAccounts`\" pulumi-lang-java=\"`includeNewAccounts`\"\u003e`includeNewAccounts`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Cannot be used together with \u003cspan pulumi-lang-nodejs=\"`excludedAccounts`\" pulumi-lang-dotnet=\"`ExcludedAccounts`\" pulumi-lang-go=\"`excludedAccounts`\" pulumi-lang-python=\"`excluded_accounts`\" pulumi-lang-yaml=\"`excludedAccounts`\" pulumi-lang-java=\"`excludedAccounts`\"\u003e`excludedAccounts`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/AzureUcConfigActualBillConfig:AzureUcConfigActualBillConfig": {
            "properties": {
                "exportName": {
                    "type": "string",
                    "description": "The name of the configured Azure Export.\n"
                },
                "exportPath": {
                    "type": "string",
                    "description": "The path where the Azure Export is saved.\n"
                },
                "storageAccount": {
                    "type": "string",
                    "description": "The name of the storage account where the Azure Export is saved.\n"
                },
                "storageContainer": {
                    "type": "string",
                    "description": "The name of the storage container where the Azure Export is saved.\n"
                }
            },
            "type": "object",
            "required": [
                "exportName",
                "exportPath",
                "storageAccount",
                "storageContainer"
            ]
        },
        "datadog:index/AzureUcConfigAmortizedBillConfig:AzureUcConfigAmortizedBillConfig": {
            "properties": {
                "exportName": {
                    "type": "string",
                    "description": "The name of the configured Azure Export.\n"
                },
                "exportPath": {
                    "type": "string",
                    "description": "The path where the Azure Export is saved.\n"
                },
                "storageAccount": {
                    "type": "string",
                    "description": "The name of the storage account where the Azure Export is saved.\n"
                },
                "storageContainer": {
                    "type": "string",
                    "description": "The name of the storage container where the Azure Export is saved.\n"
                }
            },
            "type": "object",
            "required": [
                "exportName",
                "exportPath",
                "storageAccount",
                "storageContainer"
            ]
        },
        "datadog:index/ChildOrganizationApiKey:ChildOrganizationApiKey": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "API key.\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "Name of your API key.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "key",
                        "name"
                    ]
                }
            }
        },
        "datadog:index/ChildOrganizationApplicationKey:ChildOrganizationApplicationKey": {
            "properties": {
                "hash": {
                    "type": "string",
                    "description": "Hash of an application key.\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "Name of an application key.\n"
                },
                "owner": {
                    "type": "string",
                    "description": "Owner of an application key.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hash",
                        "name",
                        "owner"
                    ]
                }
            }
        },
        "datadog:index/ChildOrganizationSetting:ChildOrganizationSetting": {
            "properties": {
                "privateWidgetShare": {
                    "type": "boolean",
                    "description": "Whether or not the organization users can share widgets outside of Datadog.\n"
                },
                "samlAutocreateAccessRole": {
                    "type": "string",
                    "description": "The access role of the user. Options are \u003cspan pulumi-lang-nodejs=\"`st`\" pulumi-lang-dotnet=\"`St`\" pulumi-lang-go=\"`st`\" pulumi-lang-python=\"`st`\" pulumi-lang-yaml=\"`st`\" pulumi-lang-java=\"`st`\"\u003e`st`\u003c/span\u003e (standard user), \u003cspan pulumi-lang-nodejs=\"`adm`\" pulumi-lang-dotnet=\"`Adm`\" pulumi-lang-go=\"`adm`\" pulumi-lang-python=\"`adm`\" pulumi-lang-yaml=\"`adm`\" pulumi-lang-java=\"`adm`\"\u003e`adm`\u003c/span\u003e (admin user), or \u003cspan pulumi-lang-nodejs=\"`ro`\" pulumi-lang-dotnet=\"`Ro`\" pulumi-lang-go=\"`ro`\" pulumi-lang-python=\"`ro`\" pulumi-lang-yaml=\"`ro`\" pulumi-lang-java=\"`ro`\"\u003e`ro`\u003c/span\u003e (read-only user). Allowed enum values: \u003cspan pulumi-lang-nodejs=\"`st`\" pulumi-lang-dotnet=\"`St`\" pulumi-lang-go=\"`st`\" pulumi-lang-python=\"`st`\" pulumi-lang-yaml=\"`st`\" pulumi-lang-java=\"`st`\"\u003e`st`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`adm`\" pulumi-lang-dotnet=\"`Adm`\" pulumi-lang-go=\"`adm`\" pulumi-lang-python=\"`adm`\" pulumi-lang-yaml=\"`adm`\" pulumi-lang-java=\"`adm`\"\u003e`adm`\u003c/span\u003e , \u003cspan pulumi-lang-nodejs=\"`ro`\" pulumi-lang-dotnet=\"`Ro`\" pulumi-lang-go=\"`ro`\" pulumi-lang-python=\"`ro`\" pulumi-lang-yaml=\"`ro`\" pulumi-lang-java=\"`ro`\"\u003e`ro`\u003c/span\u003e, `ERROR`\n"
                },
                "samlAutocreateUsersDomains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ChildOrganizationSettingSamlAutocreateUsersDomain:ChildOrganizationSettingSamlAutocreateUsersDomain"
                    },
                    "description": "List of domains where the SAML automated user creation is enabled.\n"
                },
                "samlCanBeEnabled": {
                    "type": "boolean",
                    "description": "Whether or not SAML can be enabled for this organization.\n"
                },
                "samlIdpEndpoint": {
                    "type": "string",
                    "description": "Identity provider endpoint for SAML authentication.\n"
                },
                "samlIdpInitiatedLogins": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ChildOrganizationSettingSamlIdpInitiatedLogin:ChildOrganizationSettingSamlIdpInitiatedLogin"
                    },
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization.\n"
                },
                "samlIdpMetadataUploaded": {
                    "type": "boolean",
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization.\n"
                },
                "samlLoginUrl": {
                    "type": "string",
                    "description": "URL for SAML logging.\n"
                },
                "samlStrictModes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ChildOrganizationSettingSamlStrictMode:ChildOrganizationSettingSamlStrictMode"
                    },
                    "description": "Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML.\n"
                },
                "samls": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ChildOrganizationSettingSaml:ChildOrganizationSettingSaml"
                    },
                    "description": "SAML properties\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "privateWidgetShare",
                        "samlAutocreateAccessRole",
                        "samlAutocreateUsersDomains",
                        "samlCanBeEnabled",
                        "samlIdpEndpoint",
                        "samlIdpInitiatedLogins",
                        "samlIdpMetadataUploaded",
                        "samlLoginUrl",
                        "samlStrictModes",
                        "samls"
                    ]
                }
            }
        },
        "datadog:index/ChildOrganizationSettingSaml:ChildOrganizationSettingSaml": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not SAML is enabled for this organization.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled"
                    ]
                }
            }
        },
        "datadog:index/ChildOrganizationSettingSamlAutocreateUsersDomain:ChildOrganizationSettingSamlAutocreateUsersDomain": {
            "properties": {
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of domains where the SAML automated user creation is enabled.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the automated user creation based on SAML domain is enabled.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "domains",
                        "enabled"
                    ]
                }
            }
        },
        "datadog:index/ChildOrganizationSettingSamlIdpInitiatedLogin:ChildOrganizationSettingSamlIdpInitiatedLogin": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled"
                    ]
                }
            }
        },
        "datadog:index/ChildOrganizationSettingSamlStrictMode:ChildOrganizationSettingSamlStrictMode": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled"
                    ]
                }
            }
        },
        "datadog:index/ChildOrganizationUser:ChildOrganizationUser": {
            "properties": {
                "accessRole": {
                    "type": "string",
                    "description": "The access role of the user. Options are \u003cspan pulumi-lang-nodejs=\"`st`\" pulumi-lang-dotnet=\"`St`\" pulumi-lang-go=\"`st`\" pulumi-lang-python=\"`st`\" pulumi-lang-yaml=\"`st`\" pulumi-lang-java=\"`st`\"\u003e`st`\u003c/span\u003e (standard user), \u003cspan pulumi-lang-nodejs=\"`adm`\" pulumi-lang-dotnet=\"`Adm`\" pulumi-lang-go=\"`adm`\" pulumi-lang-python=\"`adm`\" pulumi-lang-yaml=\"`adm`\" pulumi-lang-java=\"`adm`\"\u003e`adm`\u003c/span\u003e (admin user), or \u003cspan pulumi-lang-nodejs=\"`ro`\" pulumi-lang-dotnet=\"`Ro`\" pulumi-lang-go=\"`ro`\" pulumi-lang-python=\"`ro`\" pulumi-lang-yaml=\"`ro`\" pulumi-lang-java=\"`ro`\"\u003e`ro`\u003c/span\u003e (read-only user). Allowed enum values: \u003cspan pulumi-lang-nodejs=\"`st`\" pulumi-lang-dotnet=\"`St`\" pulumi-lang-go=\"`st`\" pulumi-lang-python=\"`st`\" pulumi-lang-yaml=\"`st`\" pulumi-lang-java=\"`st`\"\u003e`st`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`adm`\" pulumi-lang-dotnet=\"`Adm`\" pulumi-lang-go=\"`adm`\" pulumi-lang-python=\"`adm`\" pulumi-lang-yaml=\"`adm`\" pulumi-lang-java=\"`adm`\"\u003e`adm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ro`\" pulumi-lang-dotnet=\"`Ro`\" pulumi-lang-go=\"`ro`\" pulumi-lang-python=\"`ro`\" pulumi-lang-yaml=\"`ro`\" pulumi-lang-java=\"`ro`\"\u003e`ro`\u003c/span\u003e, `ERROR`\n"
                },
                "email": {
                    "type": "string",
                    "description": "The new email of the user.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the user.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "accessRole",
                        "email",
                        "name"
                    ]
                }
            }
        },
        "datadog:index/CloudConfigurationRuleFilter:CloudConfigurationRuleFilter": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The type of filtering action. Valid values are \u003cspan pulumi-lang-nodejs=\"`require`\" pulumi-lang-dotnet=\"`Require`\" pulumi-lang-go=\"`require`\" pulumi-lang-python=\"`require`\" pulumi-lang-yaml=\"`require`\" pulumi-lang-java=\"`require`\"\u003e`require`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`suppress`\" pulumi-lang-dotnet=\"`Suppress`\" pulumi-lang-go=\"`suppress`\" pulumi-lang-python=\"`suppress`\" pulumi-lang-yaml=\"`suppress`\" pulumi-lang-java=\"`suppress`\"\u003e`suppress`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query for selecting logs to apply the filtering action.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "query"
            ]
        },
        "datadog:index/CloudInventorySyncConfigAws:CloudInventorySyncConfigAws": {
            "properties": {
                "awsAccountId": {
                    "type": "string",
                    "description": "AWS Account ID of the account holding the bucket.\n"
                },
                "destinationBucketName": {
                    "type": "string",
                    "description": "Name of the S3 bucket holding the inventory files.\n"
                },
                "destinationBucketRegion": {
                    "type": "string",
                    "description": "AWS Region of the bucket holding the inventory files.\n"
                },
                "destinationPrefix": {
                    "type": "string",
                    "description": "Prefix path within the bucket for inventory files.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CloudInventorySyncConfigAzure:CloudInventorySyncConfigAzure": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "Azure Client ID.\n"
                },
                "container": {
                    "type": "string",
                    "description": "Azure Storage Container name.\n"
                },
                "resourceGroup": {
                    "type": "string",
                    "description": "Azure Resource Group name.\n"
                },
                "storageAccount": {
                    "type": "string",
                    "description": "Azure Storage Account name.\n"
                },
                "subscriptionId": {
                    "type": "string",
                    "description": "Azure Subscription ID.\n"
                },
                "tenantId": {
                    "type": "string",
                    "description": "Azure Tenant ID.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CloudInventorySyncConfigGcp:CloudInventorySyncConfigGcp": {
            "properties": {
                "destinationBucketName": {
                    "type": "string",
                    "description": "Name of the GCS bucket holding the inventory files.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "GCP Project ID of the project holding the bucket.\n"
                },
                "serviceAccountEmail": {
                    "type": "string",
                    "description": "Service account email used for reading the bucket.\n"
                },
                "sourceBucketName": {
                    "type": "string",
                    "description": "Name of the source bucket the inventory report is generated for.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ComplianceCustomFrameworkRequirement:ComplianceCustomFrameworkRequirement": {
            "properties": {
                "controls": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ComplianceCustomFrameworkRequirementControl:ComplianceCustomFrameworkRequirementControl"
                    },
                    "description": "The controls of the requirement. Length must be at least 1.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the requirement. String length must be at least 1.\n"
                }
            },
            "type": "object",
            "required": [
                "controls",
                "name"
            ]
        },
        "datadog:index/ComplianceCustomFrameworkRequirementControl:ComplianceCustomFrameworkRequirementControl": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the control. String length must be at least 1.\n"
                },
                "rulesIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The set of rules IDs for the control. Length must be at least 1.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "rulesIds"
            ]
        },
        "datadog:index/CostBudgetBudgetLine:CostBudgetBudgetLine": {
            "properties": {
                "amounts": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "number"
                    },
                    "description": "Map of month (YYYYMM) to budget amount. Example: {\"202601\": 1000.0, \"202602\": 1200.0}\n"
                },
                "childTagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CostBudgetBudgetLineChildTagFilter:CostBudgetBudgetLineChildTagFilter"
                    },
                    "description": "Child tag filters for hierarchical budgets. **Note:** Must be used with parent*tag*filters. Cannot be used with tag*filters.\n"
                },
                "parentTagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CostBudgetBudgetLineParentTagFilter:CostBudgetBudgetLineParentTagFilter"
                    },
                    "description": "Parent tag filters for hierarchical budgets. **Note:** Must be used with child*tag*filters. Cannot be used with tag*filters.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CostBudgetBudgetLineTagFilter:CostBudgetBudgetLineTagFilter"
                    },
                    "description": "Tag filters for non-hierarchical budgets. **Note:** Cannot be used with parent*tag*filters/child*tag*filters.\n"
                }
            },
            "type": "object",
            "required": [
                "amounts"
            ]
        },
        "datadog:index/CostBudgetBudgetLineChildTagFilter:CostBudgetBudgetLineChildTagFilter": {
            "properties": {
                "tagKey": {
                    "type": "string",
                    "description": "Must be one of the tags from the \u003cspan pulumi-lang-nodejs=\"`metricsQuery`\" pulumi-lang-dotnet=\"`MetricsQuery`\" pulumi-lang-go=\"`metricsQuery`\" pulumi-lang-python=\"`metrics_query`\" pulumi-lang-yaml=\"`metricsQuery`\" pulumi-lang-java=\"`metricsQuery`\"\u003e`metricsQuery`\u003c/span\u003e.\n"
                },
                "tagValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValue"
            ]
        },
        "datadog:index/CostBudgetBudgetLineParentTagFilter:CostBudgetBudgetLineParentTagFilter": {
            "properties": {
                "tagKey": {
                    "type": "string",
                    "description": "Must be one of the tags from the \u003cspan pulumi-lang-nodejs=\"`metricsQuery`\" pulumi-lang-dotnet=\"`MetricsQuery`\" pulumi-lang-go=\"`metricsQuery`\" pulumi-lang-python=\"`metrics_query`\" pulumi-lang-yaml=\"`metricsQuery`\" pulumi-lang-java=\"`metricsQuery`\"\u003e`metricsQuery`\u003c/span\u003e.\n"
                },
                "tagValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValue"
            ]
        },
        "datadog:index/CostBudgetBudgetLineTagFilter:CostBudgetBudgetLineTagFilter": {
            "properties": {
                "tagKey": {
                    "type": "string",
                    "description": "Must be one of the tags from the \u003cspan pulumi-lang-nodejs=\"`metricsQuery`\" pulumi-lang-dotnet=\"`MetricsQuery`\" pulumi-lang-go=\"`metricsQuery`\" pulumi-lang-python=\"`metrics_query`\" pulumi-lang-yaml=\"`metricsQuery`\" pulumi-lang-java=\"`metricsQuery`\"\u003e`metricsQuery`\u003c/span\u003e.\n"
                },
                "tagValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValue"
            ]
        },
        "datadog:index/CostBudgetEntry:CostBudgetEntry": {
            "properties": {
                "amount": {
                    "type": "number"
                },
                "month": {
                    "type": "integer"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CostBudgetEntryTagFilter:CostBudgetEntryTagFilter"
                    }
                }
            },
            "type": "object",
            "required": [
                "amount",
                "month"
            ]
        },
        "datadog:index/CostBudgetEntryTagFilter:CostBudgetEntryTagFilter": {
            "properties": {
                "tagKey": {
                    "type": "string",
                    "description": "**Note:** Must be one of the tags from the \u003cspan pulumi-lang-nodejs=\"`metricsQuery`\" pulumi-lang-dotnet=\"`MetricsQuery`\" pulumi-lang-go=\"`metricsQuery`\" pulumi-lang-python=\"`metrics_query`\" pulumi-lang-yaml=\"`metricsQuery`\" pulumi-lang-java=\"`metricsQuery`\"\u003e`metricsQuery`\u003c/span\u003e.\n"
                },
                "tagValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValue"
            ]
        },
        "datadog:index/CsmThreatsAgentRuleAction:CsmThreatsAgentRuleAction": {
            "properties": {
                "hash": {
                    "$ref": "#/types/datadog:index/CsmThreatsAgentRuleActionHash:CsmThreatsAgentRuleActionHash",
                    "description": "Hash action configuration\n"
                },
                "set": {
                    "$ref": "#/types/datadog:index/CsmThreatsAgentRuleActionSet:CsmThreatsAgentRuleActionSet",
                    "description": "Set action configuration\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CsmThreatsAgentRuleActionHash:CsmThreatsAgentRuleActionHash": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "The field to hash\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CsmThreatsAgentRuleActionSet:CsmThreatsAgentRuleActionSet": {
            "properties": {
                "append": {
                    "type": "boolean",
                    "description": "Whether to append to the set\n"
                },
                "defaultValue": {
                    "type": "string",
                    "description": "The default value to set\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression to use for the set action\n"
                },
                "field": {
                    "type": "string",
                    "description": "The field to get the value from\n"
                },
                "inherited": {
                    "type": "boolean",
                    "description": "Whether the set action is inherited\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the set action\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope of the set action (process, container, cgroup, or empty)\n"
                },
                "size": {
                    "type": "integer",
                    "description": "The maximum size of the set\n"
                },
                "ttl": {
                    "type": "integer",
                    "description": "The time to live for the set in nanoseconds\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value to set\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "append",
                        "defaultValue",
                        "expression",
                        "field",
                        "inherited",
                        "scope",
                        "size",
                        "ttl",
                        "value"
                    ]
                }
            }
        },
        "datadog:index/CustomAllocationRuleCostsToAllocate:CustomAllocationRuleCostsToAllocate": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition to match. Valid values are `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e, `not in`.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The tag key to filter on (e.g., \u003cspan pulumi-lang-nodejs=\"`awsProduct`\" pulumi-lang-dotnet=\"`AwsProduct`\" pulumi-lang-go=\"`awsProduct`\" pulumi-lang-python=\"`aws_product`\" pulumi-lang-yaml=\"`awsProduct`\" pulumi-lang-java=\"`awsProduct`\"\u003e`awsProduct`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`environment`\" pulumi-lang-dotnet=\"`Environment`\" pulumi-lang-go=\"`environment`\" pulumi-lang-python=\"`environment`\" pulumi-lang-yaml=\"`environment`\" pulumi-lang-java=\"`environment`\"\u003e`environment`\u003c/span\u003e).\n"
                },
                "value": {
                    "type": "string",
                    "description": "The single tag value to match. Use this field for conditions like `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e. Do not use with \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or `not in` conditions.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag values to match. Use this field for \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or `not in` conditions only. Do not use with single-value conditions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CustomAllocationRuleStrategy:CustomAllocationRuleStrategy": {
            "properties": {
                "allocatedBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CustomAllocationRuleStrategyAllocatedBy:CustomAllocationRuleStrategyAllocatedBy"
                    }
                },
                "allocatedByFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CustomAllocationRuleStrategyAllocatedByFilter:CustomAllocationRuleStrategyAllocatedByFilter"
                    }
                },
                "allocatedByTagKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tag keys used to allocate costs (e.g., `[\"team\", \"project\"]`). Costs will be distributed across unique values of these tags.\n"
                },
                "basedOnCosts": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CustomAllocationRuleStrategyBasedOnCost:CustomAllocationRuleStrategyBasedOnCost"
                    }
                },
                "basedOnTimeseries": {
                    "$ref": "#/types/datadog:index/CustomAllocationRuleStrategyBasedOnTimeseries:CustomAllocationRuleStrategyBasedOnTimeseries"
                },
                "evaluateGroupedByFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CustomAllocationRuleStrategyEvaluateGroupedByFilter:CustomAllocationRuleStrategyEvaluateGroupedByFilter"
                    }
                },
                "evaluateGroupedByTagKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tag keys used to group costs before allocation. Costs are grouped by these tag values before applying the allocation strategy.\n"
                },
                "granularity": {
                    "type": "string",
                    "description": "The granularity level for cost allocation. Valid values are \u003cspan pulumi-lang-nodejs=\"`daily`\" pulumi-lang-dotnet=\"`Daily`\" pulumi-lang-go=\"`daily`\" pulumi-lang-python=\"`daily`\" pulumi-lang-yaml=\"`daily`\" pulumi-lang-java=\"`daily`\"\u003e`daily`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`monthly`\" pulumi-lang-dotnet=\"`Monthly`\" pulumi-lang-go=\"`monthly`\" pulumi-lang-python=\"`monthly`\" pulumi-lang-yaml=\"`monthly`\" pulumi-lang-java=\"`monthly`\"\u003e`monthly`\u003c/span\u003e.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The allocation method. Valid values are \u003cspan pulumi-lang-nodejs=\"`even`\" pulumi-lang-dotnet=\"`Even`\" pulumi-lang-go=\"`even`\" pulumi-lang-python=\"`even`\" pulumi-lang-yaml=\"`even`\" pulumi-lang-java=\"`even`\"\u003e`even`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`proportional`\" pulumi-lang-dotnet=\"`Proportional`\" pulumi-lang-go=\"`proportional`\" pulumi-lang-python=\"`proportional`\" pulumi-lang-yaml=\"`proportional`\" pulumi-lang-java=\"`proportional`\"\u003e`proportional`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`proportionalTimeseries`\" pulumi-lang-dotnet=\"`ProportionalTimeseries`\" pulumi-lang-go=\"`proportionalTimeseries`\" pulumi-lang-python=\"`proportional_timeseries`\" pulumi-lang-yaml=\"`proportionalTimeseries`\" pulumi-lang-java=\"`proportionalTimeseries`\"\u003e`proportionalTimeseries`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`percent`\" pulumi-lang-dotnet=\"`Percent`\" pulumi-lang-go=\"`percent`\" pulumi-lang-python=\"`percent`\" pulumi-lang-yaml=\"`percent`\" pulumi-lang-java=\"`percent`\"\u003e`percent`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CustomAllocationRuleStrategyAllocatedBy:CustomAllocationRuleStrategyAllocatedBy": {
            "properties": {
                "allocatedTags": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CustomAllocationRuleStrategyAllocatedByAllocatedTag:CustomAllocationRuleStrategyAllocatedByAllocatedTag"
                    }
                },
                "percentage": {
                    "type": "number",
                    "description": "The percentage of costs to allocate to this target as a decimal (e.g., 0.33 for 33%). Used when \u003cspan pulumi-lang-nodejs=\"`method`\" pulumi-lang-dotnet=\"`Method`\" pulumi-lang-go=\"`method`\" pulumi-lang-python=\"`method`\" pulumi-lang-yaml=\"`method`\" pulumi-lang-java=\"`method`\"\u003e`method`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`percent`\" pulumi-lang-dotnet=\"`Percent`\" pulumi-lang-go=\"`percent`\" pulumi-lang-python=\"`percent`\" pulumi-lang-yaml=\"`percent`\" pulumi-lang-java=\"`percent`\"\u003e`percent`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CustomAllocationRuleStrategyAllocatedByAllocatedTag:CustomAllocationRuleStrategyAllocatedByAllocatedTag": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "The tag key to allocate costs to (e.g., \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`environment`\" pulumi-lang-dotnet=\"`Environment`\" pulumi-lang-go=\"`environment`\" pulumi-lang-python=\"`environment`\" pulumi-lang-yaml=\"`environment`\" pulumi-lang-java=\"`environment`\"\u003e`environment`\u003c/span\u003e).\n"
                },
                "value": {
                    "type": "string",
                    "description": "The tag value to allocate costs to (e.g., \u003cspan pulumi-lang-nodejs=\"`backend`\" pulumi-lang-dotnet=\"`Backend`\" pulumi-lang-go=\"`backend`\" pulumi-lang-python=\"`backend`\" pulumi-lang-yaml=\"`backend`\" pulumi-lang-java=\"`backend`\"\u003e`backend`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`production`\" pulumi-lang-dotnet=\"`Production`\" pulumi-lang-go=\"`production`\" pulumi-lang-python=\"`production`\" pulumi-lang-yaml=\"`production`\" pulumi-lang-java=\"`production`\"\u003e`production`\u003c/span\u003e).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CustomAllocationRuleStrategyAllocatedByFilter:CustomAllocationRuleStrategyAllocatedByFilter": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition to match. Valid values are `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e, `not in`.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The tag key to filter on for allocation targets.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The single tag value to match for allocation. Use with conditions like `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag values to match for allocation. Use with \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or `not in` conditions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CustomAllocationRuleStrategyBasedOnCost:CustomAllocationRuleStrategyBasedOnCost": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition to match. Valid values are `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e, `not in`.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The tag key to use as the basis for cost allocation calculations.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The single tag value to use for cost calculations. Use with conditions like `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag values to use for cost calculations. Use with \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or `not in` conditions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/CustomAllocationRuleStrategyBasedOnTimeseries:CustomAllocationRuleStrategyBasedOnTimeseries": {
            "type": "object"
        },
        "datadog:index/CustomAllocationRuleStrategyEvaluateGroupedByFilter:CustomAllocationRuleStrategyEvaluateGroupedByFilter": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition to match. Valid values are `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e, `not in`.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The tag key to filter on when grouping costs for evaluation.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The single tag value to match when grouping. Use with conditions like `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag values to match when grouping. Use with \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or `not in` conditions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardListDashItem:DashboardListDashItem": {
            "properties": {
                "dashId": {
                    "type": "string",
                    "description": "The ID of the dashboard to add\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of this dashboard. Valid values are \u003cspan pulumi-lang-nodejs=\"`customTimeboard`\" pulumi-lang-dotnet=\"`CustomTimeboard`\" pulumi-lang-go=\"`customTimeboard`\" pulumi-lang-python=\"`custom_timeboard`\" pulumi-lang-yaml=\"`customTimeboard`\" pulumi-lang-java=\"`customTimeboard`\"\u003e`customTimeboard`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customScreenboard`\" pulumi-lang-dotnet=\"`CustomScreenboard`\" pulumi-lang-go=\"`customScreenboard`\" pulumi-lang-python=\"`custom_screenboard`\" pulumi-lang-yaml=\"`customScreenboard`\" pulumi-lang-java=\"`customScreenboard`\"\u003e`customScreenboard`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`integrationScreenboard`\" pulumi-lang-dotnet=\"`IntegrationScreenboard`\" pulumi-lang-go=\"`integrationScreenboard`\" pulumi-lang-python=\"`integration_screenboard`\" pulumi-lang-yaml=\"`integrationScreenboard`\" pulumi-lang-java=\"`integrationScreenboard`\"\u003e`integrationScreenboard`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`integrationTimeboard`\" pulumi-lang-dotnet=\"`IntegrationTimeboard`\" pulumi-lang-go=\"`integrationTimeboard`\" pulumi-lang-python=\"`integration_timeboard`\" pulumi-lang-yaml=\"`integrationTimeboard`\" pulumi-lang-java=\"`integrationTimeboard`\"\u003e`integrationTimeboard`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hostTimeboard`\" pulumi-lang-dotnet=\"`HostTimeboard`\" pulumi-lang-go=\"`hostTimeboard`\" pulumi-lang-python=\"`host_timeboard`\" pulumi-lang-yaml=\"`hostTimeboard`\" pulumi-lang-java=\"`hostTimeboard`\"\u003e`hostTimeboard`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dashId",
                "type"
            ]
        },
        "datadog:index/DashboardTab:DashboardTab": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The UUID of the tab.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the tab.\n"
                },
                "widgetIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of widget references for this tab. Use @N format to reference widgets by position (1-indexed).\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "widgetIds"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name",
                        "widgetIds"
                    ]
                }
            }
        },
        "datadog:index/DashboardTemplateVariable:DashboardTemplateVariable": {
            "properties": {
                "availableValues": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of values that the template variable drop-down is be limited to\n"
                },
                "default": {
                    "type": "string",
                    "description": "The default value for the template variable on dashboard load. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`defaults`\" pulumi-lang-dotnet=\"`Defaults`\" pulumi-lang-go=\"`defaults`\" pulumi-lang-python=\"`defaults`\" pulumi-lang-yaml=\"`defaults`\" pulumi-lang-java=\"`defaults`\"\u003e`defaults`\u003c/span\u003e. **Deprecated.** Use \u003cspan pulumi-lang-nodejs=\"`defaults`\" pulumi-lang-dotnet=\"`Defaults`\" pulumi-lang-go=\"`defaults`\" pulumi-lang-python=\"`defaults`\" pulumi-lang-yaml=\"`defaults`\" pulumi-lang-java=\"`defaults`\"\u003e`defaults`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`defaults`\" pulumi-lang-dotnet=\"`Defaults`\" pulumi-lang-go=\"`defaults`\" pulumi-lang-python=\"`defaults`\" pulumi-lang-yaml=\"`defaults`\" pulumi-lang-java=\"`defaults`\"\u003e`defaults`\u003c/span\u003e instead."
                },
                "defaults": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "One or many default values for template variables on load. If more than one default is specified, they will be unioned together with `OR`. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the variable.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "The tag prefix associated with the variable. Only tags with this prefix appear in the variable dropdown.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "datadog:index/DashboardTemplateVariablePreset:DashboardTemplateVariablePreset": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the preset.\n"
                },
                "templateVariables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardTemplateVariablePresetTemplateVariable:DashboardTemplateVariablePresetTemplateVariable"
                    },
                    "description": "The template variable names and assumed values under the given preset\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardTemplateVariablePresetTemplateVariable:DashboardTemplateVariablePresetTemplateVariable": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the template variable\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value that should be assumed by the template variable in this preset. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`values`\" pulumi-lang-dotnet=\"`Values`\" pulumi-lang-go=\"`values`\" pulumi-lang-python=\"`values`\" pulumi-lang-yaml=\"`values`\" pulumi-lang-java=\"`values`\"\u003e`values`\u003c/span\u003e. **Deprecated.** Use \u003cspan pulumi-lang-nodejs=\"`values`\" pulumi-lang-dotnet=\"`Values`\" pulumi-lang-go=\"`values`\" pulumi-lang-python=\"`values`\" pulumi-lang-yaml=\"`values`\" pulumi-lang-java=\"`values`\"\u003e`values`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`values`\" pulumi-lang-dotnet=\"`Values`\" pulumi-lang-go=\"`values`\" pulumi-lang-python=\"`values`\" pulumi-lang-yaml=\"`values`\" pulumi-lang-java=\"`values`\"\u003e`values`\u003c/span\u003e instead."
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "One or many template variable values within the saved view, which will be unioned together using `OR` if more than one is specified. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidget:DashboardWidget": {
            "properties": {
                "alertGraphDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetAlertGraphDefinition:DashboardWidgetAlertGraphDefinition",
                    "description": "The definition for a Alert Graph widget.\n"
                },
                "alertValueDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetAlertValueDefinition:DashboardWidgetAlertValueDefinition",
                    "description": "The definition for a Alert Value widget.\n"
                },
                "changeDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinition:DashboardWidgetChangeDefinition",
                    "description": "The definition for a Change widget.\n"
                },
                "checkStatusDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetCheckStatusDefinition:DashboardWidgetCheckStatusDefinition",
                    "description": "The definition for a Check Status widget.\n"
                },
                "distributionDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinition:DashboardWidgetDistributionDefinition",
                    "description": "The definition for a Distribution widget.\n"
                },
                "eventStreamDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetEventStreamDefinition:DashboardWidgetEventStreamDefinition",
                    "description": "The definition for a Event Stream widget.\n"
                },
                "eventTimelineDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetEventTimelineDefinition:DashboardWidgetEventTimelineDefinition",
                    "description": "The definition for a Event Timeline widget.\n"
                },
                "freeTextDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetFreeTextDefinition:DashboardWidgetFreeTextDefinition",
                    "description": "The definition for a Free Text widget.\n"
                },
                "geomapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinition:DashboardWidgetGeomapDefinition",
                    "description": "The definition for a Geomap widget.\n"
                },
                "groupDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGroupDefinition:DashboardWidgetGroupDefinition",
                    "description": "The definition for a Group widget.\n"
                },
                "heatmapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinition:DashboardWidgetHeatmapDefinition",
                    "description": "The definition for a Heatmap widget.\n"
                },
                "hostmapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinition:DashboardWidgetHostmapDefinition",
                    "description": "The definition for a Hostmap widget.\n"
                },
                "id": {
                    "type": "integer",
                    "description": "The ID of the widget.\n"
                },
                "iframeDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetIframeDefinition:DashboardWidgetIframeDefinition",
                    "description": "The definition for an Iframe widget.\n"
                },
                "imageDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetImageDefinition:DashboardWidgetImageDefinition",
                    "description": "The definition for an Image widget\n"
                },
                "listStreamDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetListStreamDefinition:DashboardWidgetListStreamDefinition",
                    "description": "The definition for a List Stream widget.\n"
                },
                "logStreamDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogStreamDefinition:DashboardWidgetLogStreamDefinition",
                    "description": "The definition for an Log Stream widget.\n"
                },
                "manageStatusDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetManageStatusDefinition:DashboardWidgetManageStatusDefinition",
                    "description": "The definition for an Manage Status widget.\n"
                },
                "noteDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetNoteDefinition:DashboardWidgetNoteDefinition",
                    "description": "The definition for a Note widget.\n"
                },
                "powerpackDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetPowerpackDefinition:DashboardWidgetPowerpackDefinition",
                    "description": "The definition for a Powerpack widget.\n"
                },
                "queryTableDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinition:DashboardWidgetQueryTableDefinition",
                    "description": "The definition for a Query Table widget.\n"
                },
                "queryValueDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinition:DashboardWidgetQueryValueDefinition",
                    "description": "The definition for a Query Value widget.\n"
                },
                "runWorkflowDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRunWorkflowDefinition:DashboardWidgetRunWorkflowDefinition",
                    "description": "The definition for a Run Workflow widget.\n"
                },
                "scatterplotDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinition:DashboardWidgetScatterplotDefinition",
                    "description": "The definition for a Scatterplot widget.\n"
                },
                "serviceLevelObjectiveDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetServiceLevelObjectiveDefinition:DashboardWidgetServiceLevelObjectiveDefinition",
                    "description": "The definition for a Service Level Objective widget.\n"
                },
                "servicemapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetServicemapDefinition:DashboardWidgetServicemapDefinition",
                    "description": "The definition for a Service Map widget.\n"
                },
                "sloListDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSloListDefinition:DashboardWidgetSloListDefinition",
                    "description": "The definition for an SLO (Service Level Objective) List widget.\n"
                },
                "splitGraphDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinition:DashboardWidgetSplitGraphDefinition",
                    "description": "The definition for a Split Graph widget.\n"
                },
                "sunburstDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinition:DashboardWidgetSunburstDefinition",
                    "description": "The definition for a Sunburst widget.\n"
                },
                "timeseriesDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinition:DashboardWidgetTimeseriesDefinition",
                    "description": "The definition for a Timeseries widget.\n"
                },
                "toplistDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinition:DashboardWidgetToplistDefinition",
                    "description": "The definition for a Toplist widget.\n"
                },
                "topologyMapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTopologyMapDefinition:DashboardWidgetTopologyMapDefinition",
                    "description": "The definition for a Topology Map widget.\n"
                },
                "traceServiceDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTraceServiceDefinition:DashboardWidgetTraceServiceDefinition",
                    "description": "The definition for a Trace Service widget.\n"
                },
                "treemapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinition:DashboardWidgetTreemapDefinition",
                    "description": "The definition for a Treemap widget.\n"
                },
                "widgetLayout": {
                    "$ref": "#/types/datadog:index/DashboardWidgetWidgetLayout:DashboardWidgetWidgetLayout",
                    "description": "The layout of the widget on a 'free' dashboard.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetAlertGraphDefinition:DashboardWidgetAlertGraphDefinition": {
            "properties": {
                "alertId": {
                    "type": "string",
                    "description": "The ID of the monitor used by the widget.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "vizType": {
                    "type": "string",
                    "description": "Type of visualization to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`timeseries`\" pulumi-lang-dotnet=\"`Timeseries`\" pulumi-lang-go=\"`timeseries`\" pulumi-lang-python=\"`timeseries`\" pulumi-lang-yaml=\"`timeseries`\" pulumi-lang-java=\"`timeseries`\"\u003e`timeseries`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`toplist`\" pulumi-lang-dotnet=\"`Toplist`\" pulumi-lang-go=\"`toplist`\" pulumi-lang-python=\"`toplist`\" pulumi-lang-yaml=\"`toplist`\" pulumi-lang-java=\"`toplist`\"\u003e`toplist`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "alertId",
                "vizType"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "alertId",
                        "hideIncompleteCostData",
                        "vizType"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetAlertValueDefinition:DashboardWidgetAlertValueDefinition": {
            "properties": {
                "alertId": {
                    "type": "string",
                    "description": "The ID of the monitor used by the widget.\n"
                },
                "precision": {
                    "type": "integer",
                    "description": "The precision to use when displaying the value. Use `*` for maximum precision.\n"
                },
                "textAlign": {
                    "type": "string",
                    "description": "The alignment of the text in the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "unit": {
                    "type": "string",
                    "description": "The unit for the value displayed in the widget.\n"
                }
            },
            "type": "object",
            "required": [
                "alertId"
            ]
        },
        "datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQueryComputeQuery:DashboardWidgetApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetApmQueryGroupBy:DashboardWidgetApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetApmQueryMultiCompute:DashboardWidgetApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetApmQueryComputeQuery:DashboardWidgetApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetApmQueryGroupBy:DashboardWidgetApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQueryGroupBySortQuery:DashboardWidgetApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetApmQueryGroupBySortQuery:DashboardWidgetApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetApmQueryMultiCompute:DashboardWidgetApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinition:DashboardWidgetChangeDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionCustomLink:DashboardWidgetChangeDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequest:DashboardWidgetChangeDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetChangeDefinitionCustomLink:DashboardWidgetChangeDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequest:DashboardWidgetChangeDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "changeType": {
                    "type": "string",
                    "description": "Whether to show absolute or relative change. Valid values are \u003cspan pulumi-lang-nodejs=\"`absolute`\" pulumi-lang-dotnet=\"`Absolute`\" pulumi-lang-go=\"`absolute`\" pulumi-lang-python=\"`absolute`\" pulumi-lang-yaml=\"`absolute`\" pulumi-lang-java=\"`absolute`\"\u003e`absolute`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`relative`\" pulumi-lang-dotnet=\"`Relative`\" pulumi-lang-go=\"`relative`\" pulumi-lang-python=\"`relative`\" pulumi-lang-yaml=\"`relative`\" pulumi-lang-java=\"`relative`\"\u003e`relative`\u003c/span\u003e.\n"
                },
                "compareTo": {
                    "type": "string",
                    "description": "Choose from when to compare current data to. Valid values are \u003cspan pulumi-lang-nodejs=\"`hourBefore`\" pulumi-lang-dotnet=\"`HourBefore`\" pulumi-lang-go=\"`hourBefore`\" pulumi-lang-python=\"`hour_before`\" pulumi-lang-yaml=\"`hourBefore`\" pulumi-lang-java=\"`hourBefore`\"\u003e`hourBefore`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dayBefore`\" pulumi-lang-dotnet=\"`DayBefore`\" pulumi-lang-go=\"`dayBefore`\" pulumi-lang-python=\"`day_before`\" pulumi-lang-yaml=\"`dayBefore`\" pulumi-lang-java=\"`dayBefore`\"\u003e`dayBefore`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekBefore`\" pulumi-lang-dotnet=\"`WeekBefore`\" pulumi-lang-go=\"`weekBefore`\" pulumi-lang-python=\"`week_before`\" pulumi-lang-yaml=\"`weekBefore`\" pulumi-lang-java=\"`weekBefore`\"\u003e`weekBefore`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthBefore`\" pulumi-lang-dotnet=\"`MonthBefore`\" pulumi-lang-go=\"`monthBefore`\" pulumi-lang-python=\"`month_before`\" pulumi-lang-yaml=\"`monthBefore`\" pulumi-lang-java=\"`monthBefore`\"\u003e`monthBefore`\u003c/span\u003e.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormula:DashboardWidgetChangeDefinitionRequestFormula"
                    }
                },
                "increaseGood": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red).\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "orderBy": {
                    "type": "string",
                    "description": "What to order by. Valid values are \u003cspan pulumi-lang-nodejs=\"`change`\" pulumi-lang-dotnet=\"`Change`\" pulumi-lang-go=\"`change`\" pulumi-lang-python=\"`change`\" pulumi-lang-yaml=\"`change`\" pulumi-lang-java=\"`change`\"\u003e`change`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`present`\" pulumi-lang-dotnet=\"`Present`\" pulumi-lang-go=\"`present`\" pulumi-lang-python=\"`present`\" pulumi-lang-yaml=\"`present`\" pulumi-lang-java=\"`present`\"\u003e`present`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`past`\" pulumi-lang-dotnet=\"`Past`\" pulumi-lang-go=\"`past`\" pulumi-lang-python=\"`past`\" pulumi-lang-yaml=\"`past`\" pulumi-lang-java=\"`past`\"\u003e`past`\u003c/span\u003e.\n"
                },
                "orderDir": {
                    "type": "string",
                    "description": "Widget sorting method. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestProcessQuery:DashboardWidgetChangeDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQuery:DashboardWidgetChangeDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "showPresent": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, displays the current value.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormula:DashboardWidgetChangeDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormulaConditionalFormat:DashboardWidgetChangeDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormulaLimit:DashboardWidgetChangeDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormat:DashboardWidgetChangeDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormulaStyle:DashboardWidgetChangeDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormulaConditionalFormat:DashboardWidgetChangeDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormulaLimit:DashboardWidgetChangeDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormat:DashboardWidgetChangeDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetChangeDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestFormulaStyle:DashboardWidgetChangeDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestProcessQuery:DashboardWidgetChangeDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQuery:DashboardWidgetChangeDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetChangeDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetChangeDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryCloudCostQuery:DashboardWidgetChangeDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQuery:DashboardWidgetChangeDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryMetricQuery:DashboardWidgetChangeDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryProcessQuery:DashboardWidgetChangeDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQuerySloQuery:DashboardWidgetChangeDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetChangeDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetChangeDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryCloudCostQuery:DashboardWidgetChangeDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQuery:DashboardWidgetChangeDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryCompute:DashboardWidgetChangeDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQuerySearch:DashboardWidgetChangeDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryCompute:DashboardWidgetChangeDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryEventQuerySearch:DashboardWidgetChangeDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryMetricQuery:DashboardWidgetChangeDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQueryProcessQuery:DashboardWidgetChangeDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetChangeDefinitionRequestQuerySloQuery:DashboardWidgetChangeDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetCheckStatusDefinition:DashboardWidgetCheckStatusDefinition": {
            "properties": {
                "check": {
                    "type": "string",
                    "description": "The check to use in the widget.\n"
                },
                "group": {
                    "type": "string",
                    "description": "The check group to use in the widget.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "When `grouping = \"cluster\"`, indicates a list of tags to use for grouping.\n"
                },
                "grouping": {
                    "type": "string",
                    "description": "The kind of grouping to use. Valid values are \u003cspan pulumi-lang-nodejs=\"`check`\" pulumi-lang-dotnet=\"`Check`\" pulumi-lang-go=\"`check`\" pulumi-lang-python=\"`check`\" pulumi-lang-yaml=\"`check`\" pulumi-lang-java=\"`check`\"\u003e`check`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags to use in the widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "check",
                "grouping"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "check",
                        "grouping",
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetDistributionDefinition:DashboardWidgetDistributionDefinition": {
            "properties": {
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "legendSize": {
                    "type": "string",
                    "description": "The size of the legend displayed in the widget.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinitionRequest:DashboardWidgetDistributionDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                },
                "showLegend": {
                    "type": "boolean",
                    "description": "Whether or not to show the legend on this widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "xaxis": {
                    "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinitionXaxis:DashboardWidgetDistributionDefinitionXaxis",
                    "description": "A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinitionYaxis:DashboardWidgetDistributionDefinitionYaxis",
                    "description": "A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetDistributionDefinitionRequest:DashboardWidgetDistributionDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "apmStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinitionRequestApmStatsQuery:DashboardWidgetDistributionDefinitionRequestApmStatsQuery"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinitionRequestProcessQuery:DashboardWidgetDistributionDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinitionRequestStyle:DashboardWidgetDistributionDefinitionRequestStyle",
                    "description": "The style of the widget graph. One nested block is allowed using the structure below.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetDistributionDefinitionRequestApmStatsQuery:DashboardWidgetDistributionDefinitionRequestApmStatsQuery": {
            "properties": {
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinitionRequestApmStatsQueryColumn:DashboardWidgetDistributionDefinitionRequestApmStatsQueryColumn"
                    },
                    "description": "Column properties used by the front end for display.\n"
                },
                "env": {
                    "type": "string",
                    "description": "The environment name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The operation name associated with the service.\n"
                },
                "primaryTag": {
                    "type": "string",
                    "description": "The organization's host group name and value.\n"
                },
                "resource": {
                    "type": "string",
                    "description": "The resource name.\n"
                },
                "rowType": {
                    "type": "string",
                    "description": "The level of detail for the request. Valid values are \u003cspan pulumi-lang-nodejs=\"`service`\" pulumi-lang-dotnet=\"`Service`\" pulumi-lang-go=\"`service`\" pulumi-lang-python=\"`service`\" pulumi-lang-yaml=\"`service`\" pulumi-lang-java=\"`service`\"\u003e`service`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`resource`\" pulumi-lang-dotnet=\"`Resource`\" pulumi-lang-go=\"`resource`\" pulumi-lang-python=\"`resource`\" pulumi-lang-yaml=\"`resource`\" pulumi-lang-java=\"`resource`\"\u003e`resource`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`span`\" pulumi-lang-dotnet=\"`Span`\" pulumi-lang-go=\"`span`\" pulumi-lang-python=\"`span`\" pulumi-lang-yaml=\"`span`\" pulumi-lang-java=\"`span`\"\u003e`span`\u003c/span\u003e.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The service name.\n"
                }
            },
            "type": "object",
            "required": [
                "env",
                "name",
                "primaryTag",
                "rowType",
                "service"
            ]
        },
        "datadog:index/DashboardWidgetDistributionDefinitionRequestApmStatsQueryColumn:DashboardWidgetDistributionDefinitionRequestApmStatsQueryColumn": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "A user-assigned alias for the column.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The column name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "datadog:index/DashboardWidgetDistributionDefinitionRequestProcessQuery:DashboardWidgetDistributionDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetDistributionDefinitionRequestStyle:DashboardWidgetDistributionDefinitionRequestStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetDistributionDefinitionXaxis:DashboardWidgetDistributionDefinitionXaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetDistributionDefinitionYaxis:DashboardWidgetDistributionDefinitionYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetEventStreamDefinition:DashboardWidgetEventStreamDefinition": {
            "properties": {
                "eventSize": {
                    "type": "string",
                    "description": "The size to use to display an event. Valid values are \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l`\" pulumi-lang-dotnet=\"`L`\" pulumi-lang-go=\"`l`\" pulumi-lang-python=\"`l`\" pulumi-lang-yaml=\"`l`\" pulumi-lang-java=\"`l`\"\u003e`l`\u003c/span\u003e.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query to use in the widget.\n"
                },
                "tagsExecution": {
                    "type": "string",
                    "description": "The execution method for multi-value filters, options: \u003cspan pulumi-lang-nodejs=\"`and`\" pulumi-lang-dotnet=\"`And`\" pulumi-lang-go=\"`and`\" pulumi-lang-python=\"`and`\" pulumi-lang-yaml=\"`and`\" pulumi-lang-java=\"`and`\"\u003e`and`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`or`\" pulumi-lang-dotnet=\"`Or`\" pulumi-lang-go=\"`or`\" pulumi-lang-python=\"`or`\" pulumi-lang-yaml=\"`or`\" pulumi-lang-java=\"`or`\"\u003e`or`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "query"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetEventTimelineDefinition:DashboardWidgetEventTimelineDefinition": {
            "properties": {
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query to use in the widget.\n"
                },
                "tagsExecution": {
                    "type": "string",
                    "description": "The execution method for multi-value filters, options: \u003cspan pulumi-lang-nodejs=\"`and`\" pulumi-lang-dotnet=\"`And`\" pulumi-lang-go=\"`and`\" pulumi-lang-python=\"`and`\" pulumi-lang-yaml=\"`and`\" pulumi-lang-java=\"`and`\"\u003e`and`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`or`\" pulumi-lang-dotnet=\"`Or`\" pulumi-lang-go=\"`or`\" pulumi-lang-python=\"`or`\" pulumi-lang-yaml=\"`or`\" pulumi-lang-java=\"`or`\"\u003e`or`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "query"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetFreeTextDefinition:DashboardWidgetFreeTextDefinition": {
            "properties": {
                "color": {
                    "type": "string",
                    "description": "The color of the text in the widget.\n"
                },
                "fontSize": {
                    "type": "string",
                    "description": "The size of the text in the widget.\n"
                },
                "text": {
                    "type": "string",
                    "description": "The text to display in the widget.\n"
                },
                "textAlign": {
                    "type": "string",
                    "description": "The alignment of the text in the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "text"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinition:DashboardWidgetGeomapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionCustomLink:DashboardWidgetGeomapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequest:DashboardWidgetGeomapDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionStyle:DashboardWidgetGeomapDefinitionStyle",
                    "description": "The style of the widget graph. One nested block is allowed using the structure below.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "view": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionView:DashboardWidgetGeomapDefinitionView",
                    "description": "The view of the world that the map should render.\n"
                }
            },
            "type": "object",
            "required": [
                "view"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "view"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetGeomapDefinitionCustomLink:DashboardWidgetGeomapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequest:DashboardWidgetGeomapDefinitionRequest": {
            "properties": {
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormula:DashboardWidgetGeomapDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQuery:DashboardWidgetGeomapDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormula:DashboardWidgetGeomapDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaConditionalFormat:DashboardWidgetGeomapDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaLimit:DashboardWidgetGeomapDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormat:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaStyle:DashboardWidgetGeomapDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaConditionalFormat:DashboardWidgetGeomapDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaLimit:DashboardWidgetGeomapDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormat:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetGeomapDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestFormulaStyle:DashboardWidgetGeomapDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQuery:DashboardWidgetGeomapDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetGeomapDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetGeomapDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryCloudCostQuery:DashboardWidgetGeomapDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQuery:DashboardWidgetGeomapDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryMetricQuery:DashboardWidgetGeomapDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryProcessQuery:DashboardWidgetGeomapDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQuerySloQuery:DashboardWidgetGeomapDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetGeomapDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetGeomapDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryCloudCostQuery:DashboardWidgetGeomapDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQuery:DashboardWidgetGeomapDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryCompute:DashboardWidgetGeomapDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearch:DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryCompute:DashboardWidgetGeomapDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearch:DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryMetricQuery:DashboardWidgetGeomapDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQueryProcessQuery:DashboardWidgetGeomapDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionRequestQuerySloQuery:DashboardWidgetGeomapDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionStyle:DashboardWidgetGeomapDefinitionStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply to the widget.\n"
                },
                "paletteFlip": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to flip the palette tones.\n"
                }
            },
            "type": "object",
            "required": [
                "palette",
                "paletteFlip"
            ]
        },
        "datadog:index/DashboardWidgetGeomapDefinitionView:DashboardWidgetGeomapDefinitionView": {
            "properties": {
                "focus": {
                    "type": "string",
                    "description": "The two-letter ISO code of a country to focus the map on (or `WORLD`).\n"
                }
            },
            "type": "object",
            "required": [
                "focus"
            ]
        },
        "datadog:index/DashboardWidgetGroupDefinition:DashboardWidgetGroupDefinition": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "The background color of the group title, options: \u003cspan pulumi-lang-nodejs=\"`vividBlue`\" pulumi-lang-dotnet=\"`VividBlue`\" pulumi-lang-go=\"`vividBlue`\" pulumi-lang-python=\"`vivid_blue`\" pulumi-lang-yaml=\"`vividBlue`\" pulumi-lang-java=\"`vividBlue`\"\u003e`vividBlue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`vividPurple`\" pulumi-lang-dotnet=\"`VividPurple`\" pulumi-lang-go=\"`vividPurple`\" pulumi-lang-python=\"`vivid_purple`\" pulumi-lang-yaml=\"`vividPurple`\" pulumi-lang-java=\"`vividPurple`\"\u003e`vividPurple`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`vividPink`\" pulumi-lang-dotnet=\"`VividPink`\" pulumi-lang-go=\"`vividPink`\" pulumi-lang-python=\"`vivid_pink`\" pulumi-lang-yaml=\"`vividPink`\" pulumi-lang-java=\"`vividPink`\"\u003e`vividPink`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`vividOrange`\" pulumi-lang-dotnet=\"`VividOrange`\" pulumi-lang-go=\"`vividOrange`\" pulumi-lang-python=\"`vivid_orange`\" pulumi-lang-yaml=\"`vividOrange`\" pulumi-lang-java=\"`vividOrange`\"\u003e`vividOrange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`vividYellow`\" pulumi-lang-dotnet=\"`VividYellow`\" pulumi-lang-go=\"`vividYellow`\" pulumi-lang-python=\"`vivid_yellow`\" pulumi-lang-yaml=\"`vividYellow`\" pulumi-lang-java=\"`vividYellow`\"\u003e`vividYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`vividGreen`\" pulumi-lang-dotnet=\"`VividGreen`\" pulumi-lang-go=\"`vividGreen`\" pulumi-lang-python=\"`vivid_green`\" pulumi-lang-yaml=\"`vividGreen`\" pulumi-lang-java=\"`vividGreen`\"\u003e`vividGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`purple`\" pulumi-lang-dotnet=\"`Purple`\" pulumi-lang-go=\"`purple`\" pulumi-lang-python=\"`purple`\" pulumi-lang-yaml=\"`purple`\" pulumi-lang-java=\"`purple`\"\u003e`purple`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pink`\" pulumi-lang-dotnet=\"`Pink`\" pulumi-lang-go=\"`pink`\" pulumi-lang-python=\"`pink`\" pulumi-lang-yaml=\"`pink`\" pulumi-lang-java=\"`pink`\"\u003e`pink`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellow`\" pulumi-lang-dotnet=\"`Yellow`\" pulumi-lang-go=\"`yellow`\" pulumi-lang-python=\"`yellow`\" pulumi-lang-yaml=\"`yellow`\" pulumi-lang-java=\"`yellow`\"\u003e`yellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gray`\" pulumi-lang-dotnet=\"`Gray`\" pulumi-lang-go=\"`gray`\" pulumi-lang-python=\"`gray`\" pulumi-lang-yaml=\"`gray`\" pulumi-lang-java=\"`gray`\"\u003e`gray`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`white`\" pulumi-lang-dotnet=\"`White`\" pulumi-lang-go=\"`white`\" pulumi-lang-python=\"`white`\" pulumi-lang-yaml=\"`white`\" pulumi-lang-java=\"`white`\"\u003e`white`\u003c/span\u003e\n"
                },
                "bannerImg": {
                    "type": "string",
                    "description": "The image URL to display as a banner for the group.\n"
                },
                "layoutType": {
                    "type": "string",
                    "description": "The layout type of the group. Valid values are \u003cspan pulumi-lang-nodejs=\"`ordered`\" pulumi-lang-dotnet=\"`Ordered`\" pulumi-lang-go=\"`ordered`\" pulumi-lang-python=\"`ordered`\" pulumi-lang-yaml=\"`ordered`\" pulumi-lang-java=\"`ordered`\"\u003e`ordered`\u003c/span\u003e.\n"
                },
                "showTitle": {
                    "type": "boolean",
                    "description": "Whether to show the title or not. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the group.\n"
                },
                "widgets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetGroupDefinitionWidget:DashboardWidgetGroupDefinitionWidget"
                    },
                    "description": "The list of widgets in this group.\n"
                }
            },
            "type": "object",
            "required": [
                "layoutType"
            ]
        },
        "datadog:index/DashboardWidgetGroupDefinitionWidget:DashboardWidgetGroupDefinitionWidget": {
            "properties": {
                "alertGraphDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetAlertGraphDefinition:DashboardWidgetAlertGraphDefinition",
                    "description": "The definition for a Alert Graph widget.\n"
                },
                "alertValueDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetAlertValueDefinition:DashboardWidgetAlertValueDefinition",
                    "description": "The definition for a Alert Value widget.\n"
                },
                "changeDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinition:DashboardWidgetChangeDefinition",
                    "description": "The definition for a Change widget.\n"
                },
                "checkStatusDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetCheckStatusDefinition:DashboardWidgetCheckStatusDefinition",
                    "description": "The definition for a Check Status widget.\n"
                },
                "distributionDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetDistributionDefinition:DashboardWidgetDistributionDefinition",
                    "description": "The definition for a Distribution widget.\n"
                },
                "eventStreamDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetEventStreamDefinition:DashboardWidgetEventStreamDefinition",
                    "description": "The definition for a Event Stream widget.\n"
                },
                "eventTimelineDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetEventTimelineDefinition:DashboardWidgetEventTimelineDefinition",
                    "description": "The definition for a Event Timeline widget.\n"
                },
                "freeTextDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetFreeTextDefinition:DashboardWidgetFreeTextDefinition",
                    "description": "The definition for a Free Text widget.\n"
                },
                "geomapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinition:DashboardWidgetGeomapDefinition",
                    "description": "The definition for a Geomap widget.\n"
                },
                "heatmapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinition:DashboardWidgetHeatmapDefinition",
                    "description": "The definition for a Heatmap widget.\n"
                },
                "hostmapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinition:DashboardWidgetHostmapDefinition",
                    "description": "The definition for a Hostmap widget.\n"
                },
                "id": {
                    "type": "integer",
                    "description": "The ID of the widget.\n"
                },
                "iframeDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetIframeDefinition:DashboardWidgetIframeDefinition",
                    "description": "The definition for an Iframe widget.\n"
                },
                "imageDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetImageDefinition:DashboardWidgetImageDefinition",
                    "description": "The definition for an Image widget\n"
                },
                "listStreamDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetListStreamDefinition:DashboardWidgetListStreamDefinition",
                    "description": "The definition for a List Stream widget.\n"
                },
                "logStreamDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogStreamDefinition:DashboardWidgetLogStreamDefinition",
                    "description": "The definition for an Log Stream widget.\n"
                },
                "manageStatusDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetManageStatusDefinition:DashboardWidgetManageStatusDefinition",
                    "description": "The definition for an Manage Status widget.\n"
                },
                "noteDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetNoteDefinition:DashboardWidgetNoteDefinition",
                    "description": "The definition for a Note widget.\n"
                },
                "powerpackDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetPowerpackDefinition:DashboardWidgetPowerpackDefinition",
                    "description": "The definition for a Powerpack widget.\n"
                },
                "queryTableDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinition:DashboardWidgetQueryTableDefinition",
                    "description": "The definition for a Query Table widget.\n"
                },
                "queryValueDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinition:DashboardWidgetQueryValueDefinition",
                    "description": "The definition for a Query Value widget.\n"
                },
                "runWorkflowDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRunWorkflowDefinition:DashboardWidgetRunWorkflowDefinition",
                    "description": "The definition for a Run Workflow widget.\n"
                },
                "scatterplotDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinition:DashboardWidgetScatterplotDefinition",
                    "description": "The definition for a Scatterplot widget.\n"
                },
                "serviceLevelObjectiveDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetServiceLevelObjectiveDefinition:DashboardWidgetServiceLevelObjectiveDefinition",
                    "description": "The definition for a Service Level Objective widget.\n"
                },
                "servicemapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetServicemapDefinition:DashboardWidgetServicemapDefinition",
                    "description": "The definition for a Service Map widget.\n"
                },
                "sloListDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSloListDefinition:DashboardWidgetSloListDefinition",
                    "description": "The definition for an SLO (Service Level Objective) List widget.\n"
                },
                "splitGraphDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinition:DashboardWidgetSplitGraphDefinition",
                    "description": "The definition for a Split Graph widget.\n"
                },
                "sunburstDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinition:DashboardWidgetSunburstDefinition",
                    "description": "The definition for a Sunburst widget.\n"
                },
                "timeseriesDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinition:DashboardWidgetTimeseriesDefinition",
                    "description": "The definition for a Timeseries widget.\n"
                },
                "toplistDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinition:DashboardWidgetToplistDefinition",
                    "description": "The definition for a Toplist widget.\n"
                },
                "topologyMapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTopologyMapDefinition:DashboardWidgetTopologyMapDefinition",
                    "description": "The definition for a Topology Map widget.\n"
                },
                "traceServiceDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTraceServiceDefinition:DashboardWidgetTraceServiceDefinition",
                    "description": "The definition for a Trace Service widget.\n"
                },
                "treemapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinition:DashboardWidgetTreemapDefinition",
                    "description": "The definition for a Treemap widget.\n"
                },
                "widgetLayout": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGroupDefinitionWidgetWidgetLayout:DashboardWidgetGroupDefinitionWidgetWidgetLayout",
                    "description": "The layout of the widget on a 'free' dashboard.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetGroupDefinitionWidgetWidgetLayout:DashboardWidgetGroupDefinitionWidgetWidgetLayout": {
            "properties": {
                "height": {
                    "type": "integer",
                    "description": "The height of the widget.\n"
                },
                "isColumnBreak": {
                    "type": "boolean",
                    "description": "Whether the widget should be the first one on the second column in high density or not. Only one widget in the dashboard should have this property set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the widget.\n"
                },
                "x": {
                    "type": "integer",
                    "description": "The position of the widget on the x (horizontal) axis. Must be greater than or equal to 0.\n"
                },
                "y": {
                    "type": "integer",
                    "description": "The position of the widget on the y (vertical) axis. Must be greater than or equal to 0.\n"
                }
            },
            "type": "object",
            "required": [
                "height",
                "width",
                "x",
                "y"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinition:DashboardWidgetHeatmapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionCustomLink:DashboardWidgetHeatmapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "events": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionEvent:DashboardWidgetHeatmapDefinitionEvent"
                    },
                    "description": "The definition of the event to overlay on the graph. Multiple \u003cspan pulumi-lang-nodejs=\"`event`\" pulumi-lang-dotnet=\"`Event`\" pulumi-lang-go=\"`event`\" pulumi-lang-python=\"`event`\" pulumi-lang-yaml=\"`event`\" pulumi-lang-java=\"`event`\"\u003e`event`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "legendSize": {
                    "type": "string",
                    "description": "The size of the legend displayed in the widget.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequest:DashboardWidgetHeatmapDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                },
                "showLegend": {
                    "type": "boolean",
                    "description": "Whether or not to show the legend on this widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionYaxis:DashboardWidgetHeatmapDefinitionYaxis",
                    "description": "A nested block describing the Y-Axis Controls. The structure of this block is described below.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionCustomLink:DashboardWidgetHeatmapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionEvent:DashboardWidgetHeatmapDefinitionEvent": {
            "properties": {
                "q": {
                    "type": "string",
                    "description": "The event query to use in the widget.\n"
                },
                "tagsExecution": {
                    "type": "string",
                    "description": "The execution method for multi-value filters.\n"
                }
            },
            "type": "object",
            "required": [
                "q"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequest:DashboardWidgetHeatmapDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormula:DashboardWidgetHeatmapDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestProcessQuery:DashboardWidgetHeatmapDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQuery:DashboardWidgetHeatmapDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestStyle:DashboardWidgetHeatmapDefinitionRequestStyle",
                    "description": "The style of the widget graph. One nested block is allowed using the structure below.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormula:DashboardWidgetHeatmapDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaConditionalFormat:DashboardWidgetHeatmapDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaLimit:DashboardWidgetHeatmapDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormat:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaStyle:DashboardWidgetHeatmapDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaConditionalFormat:DashboardWidgetHeatmapDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaLimit:DashboardWidgetHeatmapDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormat:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestFormulaStyle:DashboardWidgetHeatmapDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestProcessQuery:DashboardWidgetHeatmapDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQuery:DashboardWidgetHeatmapDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetHeatmapDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetHeatmapDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryCloudCostQuery:DashboardWidgetHeatmapDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQuery:DashboardWidgetHeatmapDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryMetricQuery:DashboardWidgetHeatmapDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryProcessQuery:DashboardWidgetHeatmapDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQuerySloQuery:DashboardWidgetHeatmapDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetHeatmapDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetHeatmapDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryCloudCostQuery:DashboardWidgetHeatmapDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQuery:DashboardWidgetHeatmapDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryCompute:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQuerySearch:DashboardWidgetHeatmapDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryCompute:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetHeatmapDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryEventQuerySearch:DashboardWidgetHeatmapDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryMetricQuery:DashboardWidgetHeatmapDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQueryProcessQuery:DashboardWidgetHeatmapDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestQuerySloQuery:DashboardWidgetHeatmapDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionRequestStyle:DashboardWidgetHeatmapDefinitionRequestStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHeatmapDefinitionYaxis:DashboardWidgetHeatmapDefinitionYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHostmapDefinition:DashboardWidgetHostmapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinitionCustomLink:DashboardWidgetHostmapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "groups": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of tags to group nodes by.\n"
                },
                "noGroupHosts": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to show ungrouped nodes.\n"
                },
                "noMetricHosts": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to show nodes with no metrics.\n"
                },
                "nodeType": {
                    "type": "string",
                    "description": "The type of node used. Valid values are \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "request": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinitionRequest:DashboardWidgetHostmapDefinitionRequest",
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of tags to filter nodes by.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinitionStyle:DashboardWidgetHostmapDefinitionStyle",
                    "description": "The style of the widget graph. One nested block is allowed using the structure below.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHostmapDefinitionCustomLink:DashboardWidgetHostmapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHostmapDefinitionRequest:DashboardWidgetHostmapDefinitionRequest": {
            "properties": {
                "fills": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinitionRequestFill:DashboardWidgetHostmapDefinitionRequestFill"
                    },
                    "description": "The query used to fill the map. Exactly one nested block is allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                },
                "sizes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinitionRequestSize:DashboardWidgetHostmapDefinitionRequestSize"
                    },
                    "description": "The query used to size the map. Exactly one nested block is allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHostmapDefinitionRequestFill:DashboardWidgetHostmapDefinitionRequestFill": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinitionRequestFillProcessQuery:DashboardWidgetHostmapDefinitionRequestFillProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHostmapDefinitionRequestFillProcessQuery:DashboardWidgetHostmapDefinitionRequestFillProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetHostmapDefinitionRequestSize:DashboardWidgetHostmapDefinitionRequestSize": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetHostmapDefinitionRequestSizeProcessQuery:DashboardWidgetHostmapDefinitionRequestSizeProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetHostmapDefinitionRequestSizeProcessQuery:DashboardWidgetHostmapDefinitionRequestSizeProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetHostmapDefinitionStyle:DashboardWidgetHostmapDefinitionStyle": {
            "properties": {
                "fillMax": {
                    "type": "string",
                    "description": "The max value to use to color the map.\n"
                },
                "fillMin": {
                    "type": "string",
                    "description": "The min value to use to color the map.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                },
                "paletteFlip": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to flip the palette tones.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetIframeDefinition:DashboardWidgetIframeDefinition": {
            "properties": {
                "url": {
                    "type": "string",
                    "description": "The URL to use as a data source for the widget.\n"
                }
            },
            "type": "object",
            "required": [
                "url"
            ]
        },
        "datadog:index/DashboardWidgetImageDefinition:DashboardWidgetImageDefinition": {
            "properties": {
                "hasBackground": {
                    "type": "boolean",
                    "description": "Whether to display a background or not. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "hasBorder": {
                    "type": "boolean",
                    "description": "Whether to display a border or not. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "horizontalAlign": {
                    "type": "string",
                    "description": "The horizontal alignment for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "margin": {
                    "type": "string",
                    "description": "The margins to use around the image. Note: \u003cspan pulumi-lang-nodejs=\"`small`\" pulumi-lang-dotnet=\"`Small`\" pulumi-lang-go=\"`small`\" pulumi-lang-python=\"`small`\" pulumi-lang-yaml=\"`small`\" pulumi-lang-java=\"`small`\"\u003e`small`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`large`\" pulumi-lang-dotnet=\"`Large`\" pulumi-lang-go=\"`large`\" pulumi-lang-python=\"`large`\" pulumi-lang-yaml=\"`large`\" pulumi-lang-java=\"`large`\"\u003e`large`\u003c/span\u003e values are deprecated. Valid values are \u003cspan pulumi-lang-nodejs=\"`sm`\" pulumi-lang-dotnet=\"`Sm`\" pulumi-lang-go=\"`sm`\" pulumi-lang-python=\"`sm`\" pulumi-lang-yaml=\"`sm`\" pulumi-lang-java=\"`sm`\"\u003e`sm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`md`\" pulumi-lang-dotnet=\"`Md`\" pulumi-lang-go=\"`md`\" pulumi-lang-python=\"`md`\" pulumi-lang-yaml=\"`md`\" pulumi-lang-java=\"`md`\"\u003e`md`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lg`\" pulumi-lang-dotnet=\"`Lg`\" pulumi-lang-go=\"`lg`\" pulumi-lang-python=\"`lg`\" pulumi-lang-yaml=\"`lg`\" pulumi-lang-java=\"`lg`\"\u003e`lg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`small`\" pulumi-lang-dotnet=\"`Small`\" pulumi-lang-go=\"`small`\" pulumi-lang-python=\"`small`\" pulumi-lang-yaml=\"`small`\" pulumi-lang-java=\"`small`\"\u003e`small`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`large`\" pulumi-lang-dotnet=\"`Large`\" pulumi-lang-go=\"`large`\" pulumi-lang-python=\"`large`\" pulumi-lang-yaml=\"`large`\" pulumi-lang-java=\"`large`\"\u003e`large`\u003c/span\u003e.\n"
                },
                "sizing": {
                    "type": "string",
                    "description": "The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: \u003cspan pulumi-lang-nodejs=\"`zoom`\" pulumi-lang-dotnet=\"`Zoom`\" pulumi-lang-go=\"`zoom`\" pulumi-lang-python=\"`zoom`\" pulumi-lang-yaml=\"`zoom`\" pulumi-lang-java=\"`zoom`\"\u003e`zoom`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`fit`\" pulumi-lang-dotnet=\"`Fit`\" pulumi-lang-go=\"`fit`\" pulumi-lang-python=\"`fit`\" pulumi-lang-yaml=\"`fit`\" pulumi-lang-java=\"`fit`\"\u003e`fit`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e values are deprecated. Valid values are \u003cspan pulumi-lang-nodejs=\"`fill`\" pulumi-lang-dotnet=\"`Fill`\" pulumi-lang-go=\"`fill`\" pulumi-lang-python=\"`fill`\" pulumi-lang-yaml=\"`fill`\" pulumi-lang-java=\"`fill`\"\u003e`fill`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contain`\" pulumi-lang-dotnet=\"`Contain`\" pulumi-lang-go=\"`contain`\" pulumi-lang-python=\"`contain`\" pulumi-lang-yaml=\"`contain`\" pulumi-lang-java=\"`contain`\"\u003e`contain`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cover`\" pulumi-lang-dotnet=\"`Cover`\" pulumi-lang-go=\"`cover`\" pulumi-lang-python=\"`cover`\" pulumi-lang-yaml=\"`cover`\" pulumi-lang-java=\"`cover`\"\u003e`cover`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, `scale-down`, \u003cspan pulumi-lang-nodejs=\"`zoom`\" pulumi-lang-dotnet=\"`Zoom`\" pulumi-lang-go=\"`zoom`\" pulumi-lang-python=\"`zoom`\" pulumi-lang-yaml=\"`zoom`\" pulumi-lang-java=\"`zoom`\"\u003e`zoom`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`fit`\" pulumi-lang-dotnet=\"`Fit`\" pulumi-lang-go=\"`fit`\" pulumi-lang-python=\"`fit`\" pulumi-lang-yaml=\"`fit`\" pulumi-lang-java=\"`fit`\"\u003e`fit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL to use as a data source for the widget.\n"
                },
                "urlDarkTheme": {
                    "type": "string",
                    "description": "The URL in dark mode to use as a data source for the widget.\n"
                },
                "verticalAlign": {
                    "type": "string",
                    "description": "The vertical alignment for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`top`\" pulumi-lang-dotnet=\"`Top`\" pulumi-lang-go=\"`top`\" pulumi-lang-python=\"`top`\" pulumi-lang-yaml=\"`top`\" pulumi-lang-java=\"`top`\"\u003e`top`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bottom`\" pulumi-lang-dotnet=\"`Bottom`\" pulumi-lang-go=\"`bottom`\" pulumi-lang-python=\"`bottom`\" pulumi-lang-yaml=\"`bottom`\" pulumi-lang-java=\"`bottom`\"\u003e`bottom`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "url"
            ]
        },
        "datadog:index/DashboardWidgetListStreamDefinition:DashboardWidgetListStreamDefinition": {
            "properties": {
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetListStreamDefinitionRequest:DashboardWidgetListStreamDefinitionRequest"
                    },
                    "description": "Nested block describing the requests to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed with the structure below.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title. Default is 16.\n"
                }
            },
            "type": "object",
            "required": [
                "requests"
            ]
        },
        "datadog:index/DashboardWidgetListStreamDefinitionRequest:DashboardWidgetListStreamDefinitionRequest": {
            "properties": {
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetListStreamDefinitionRequestColumn:DashboardWidgetListStreamDefinitionRequestColumn"
                    },
                    "description": "Widget columns.\n"
                },
                "query": {
                    "$ref": "#/types/datadog:index/DashboardWidgetListStreamDefinitionRequestQuery:DashboardWidgetListStreamDefinitionRequestQuery",
                    "description": "Updated list stream widget.\n"
                },
                "responseFormat": {
                    "type": "string",
                    "description": "Widget response format. Valid values are \u003cspan pulumi-lang-nodejs=\"`eventList`\" pulumi-lang-dotnet=\"`EventList`\" pulumi-lang-go=\"`eventList`\" pulumi-lang-python=\"`event_list`\" pulumi-lang-yaml=\"`eventList`\" pulumi-lang-java=\"`eventList`\"\u003e`eventList`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "columns",
                "query",
                "responseFormat"
            ]
        },
        "datadog:index/DashboardWidgetListStreamDefinitionRequestColumn:DashboardWidgetListStreamDefinitionRequestColumn": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "Widget column field.\n"
                },
                "width": {
                    "type": "string",
                    "description": "Widget column width. Valid values are \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`compact`\" pulumi-lang-dotnet=\"`Compact`\" pulumi-lang-go=\"`compact`\" pulumi-lang-python=\"`compact`\" pulumi-lang-yaml=\"`compact`\" pulumi-lang-java=\"`compact`\"\u003e`compact`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`full`\" pulumi-lang-dotnet=\"`Full`\" pulumi-lang-go=\"`full`\" pulumi-lang-python=\"`full`\" pulumi-lang-yaml=\"`full`\" pulumi-lang-java=\"`full`\"\u003e`full`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetListStreamDefinitionRequestQuery:DashboardWidgetListStreamDefinitionRequestQuery": {
            "properties": {
                "clusteringPatternFieldPath": {
                    "type": "string",
                    "description": "Specifies the field for logs pattern clustering. Can only be used with \u003cspan pulumi-lang-nodejs=\"`logsPatternStream`\" pulumi-lang-dotnet=\"`LogsPatternStream`\" pulumi-lang-go=\"`logsPatternStream`\" pulumi-lang-python=\"`logs_pattern_stream`\" pulumi-lang-yaml=\"`logsPatternStream`\" pulumi-lang-java=\"`logsPatternStream`\"\u003e`logsPatternStream`\u003c/span\u003e.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "Source from which to query items to display in the stream. Valid values are \u003cspan pulumi-lang-nodejs=\"`logsStream`\" pulumi-lang-dotnet=\"`LogsStream`\" pulumi-lang-go=\"`logsStream`\" pulumi-lang-python=\"`logs_stream`\" pulumi-lang-yaml=\"`logsStream`\" pulumi-lang-java=\"`logsStream`\"\u003e`logsStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`auditStream`\" pulumi-lang-dotnet=\"`AuditStream`\" pulumi-lang-go=\"`auditStream`\" pulumi-lang-python=\"`audit_stream`\" pulumi-lang-yaml=\"`auditStream`\" pulumi-lang-java=\"`auditStream`\"\u003e`auditStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelineStream`\" pulumi-lang-dotnet=\"`CiPipelineStream`\" pulumi-lang-go=\"`ciPipelineStream`\" pulumi-lang-python=\"`ci_pipeline_stream`\" pulumi-lang-yaml=\"`ciPipelineStream`\" pulumi-lang-java=\"`ciPipelineStream`\"\u003e`ciPipelineStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTestStream`\" pulumi-lang-dotnet=\"`CiTestStream`\" pulumi-lang-go=\"`ciTestStream`\" pulumi-lang-python=\"`ci_test_stream`\" pulumi-lang-yaml=\"`ciTestStream`\" pulumi-lang-java=\"`ciTestStream`\"\u003e`ciTestStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumIssueStream`\" pulumi-lang-dotnet=\"`RumIssueStream`\" pulumi-lang-go=\"`rumIssueStream`\" pulumi-lang-python=\"`rum_issue_stream`\" pulumi-lang-yaml=\"`rumIssueStream`\" pulumi-lang-java=\"`rumIssueStream`\"\u003e`rumIssueStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmIssueStream`\" pulumi-lang-dotnet=\"`ApmIssueStream`\" pulumi-lang-go=\"`apmIssueStream`\" pulumi-lang-python=\"`apm_issue_stream`\" pulumi-lang-yaml=\"`apmIssueStream`\" pulumi-lang-java=\"`apmIssueStream`\"\u003e`apmIssueStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`traceStream`\" pulumi-lang-dotnet=\"`TraceStream`\" pulumi-lang-go=\"`traceStream`\" pulumi-lang-python=\"`trace_stream`\" pulumi-lang-yaml=\"`traceStream`\" pulumi-lang-java=\"`traceStream`\"\u003e`traceStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logsIssueStream`\" pulumi-lang-dotnet=\"`LogsIssueStream`\" pulumi-lang-go=\"`logsIssueStream`\" pulumi-lang-python=\"`logs_issue_stream`\" pulumi-lang-yaml=\"`logsIssueStream`\" pulumi-lang-java=\"`logsIssueStream`\"\u003e`logsIssueStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logsPatternStream`\" pulumi-lang-dotnet=\"`LogsPatternStream`\" pulumi-lang-go=\"`logsPatternStream`\" pulumi-lang-python=\"`logs_pattern_stream`\" pulumi-lang-yaml=\"`logsPatternStream`\" pulumi-lang-java=\"`logsPatternStream`\"\u003e`logsPatternStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logsTransactionStream`\" pulumi-lang-dotnet=\"`LogsTransactionStream`\" pulumi-lang-go=\"`logsTransactionStream`\" pulumi-lang-python=\"`logs_transaction_stream`\" pulumi-lang-yaml=\"`logsTransactionStream`\" pulumi-lang-java=\"`logsTransactionStream`\"\u003e`logsTransactionStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventStream`\" pulumi-lang-dotnet=\"`EventStream`\" pulumi-lang-go=\"`eventStream`\" pulumi-lang-python=\"`event_stream`\" pulumi-lang-yaml=\"`eventStream`\" pulumi-lang-java=\"`eventStream`\"\u003e`eventStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumStream`\" pulumi-lang-dotnet=\"`RumStream`\" pulumi-lang-go=\"`rumStream`\" pulumi-lang-python=\"`rum_stream`\" pulumi-lang-yaml=\"`rumStream`\" pulumi-lang-java=\"`rumStream`\"\u003e`rumStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`llmObservabilityStream`\" pulumi-lang-dotnet=\"`LlmObservabilityStream`\" pulumi-lang-go=\"`llmObservabilityStream`\" pulumi-lang-python=\"`llm_observability_stream`\" pulumi-lang-yaml=\"`llmObservabilityStream`\" pulumi-lang-java=\"`llmObservabilityStream`\"\u003e`llmObservabilityStream`\u003c/span\u003e.\n"
                },
                "eventSize": {
                    "type": "string",
                    "description": "Size of events displayed in widget. Required if \u003cspan pulumi-lang-nodejs=\"`dataSource`\" pulumi-lang-dotnet=\"`DataSource`\" pulumi-lang-go=\"`dataSource`\" pulumi-lang-python=\"`data_source`\" pulumi-lang-yaml=\"`dataSource`\" pulumi-lang-java=\"`dataSource`\"\u003e`dataSource`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`eventStream`\" pulumi-lang-dotnet=\"`EventStream`\" pulumi-lang-go=\"`eventStream`\" pulumi-lang-python=\"`event_stream`\" pulumi-lang-yaml=\"`eventStream`\" pulumi-lang-java=\"`eventStream`\"\u003e`eventStream`\u003c/span\u003e. Valid values are \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l`\" pulumi-lang-dotnet=\"`L`\" pulumi-lang-go=\"`l`\" pulumi-lang-python=\"`l`\" pulumi-lang-yaml=\"`l`\" pulumi-lang-java=\"`l`\"\u003e`l`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetListStreamDefinitionRequestQueryGroupBy:DashboardWidgetListStreamDefinitionRequestQueryGroupBy"
                    },
                    "description": "Group by configuration for the List Stream widget. Group by can only be used with \u003cspan pulumi-lang-nodejs=\"`logsPatternStream`\" pulumi-lang-dotnet=\"`LogsPatternStream`\" pulumi-lang-go=\"`logsPatternStream`\" pulumi-lang-python=\"`logs_pattern_stream`\" pulumi-lang-yaml=\"`logsPatternStream`\" pulumi-lang-java=\"`logsPatternStream`\"\u003e`logsPatternStream`\u003c/span\u003e (up to 4 items) or \u003cspan pulumi-lang-nodejs=\"`logsTransactionStream`\" pulumi-lang-dotnet=\"`LogsTransactionStream`\" pulumi-lang-go=\"`logsTransactionStream`\" pulumi-lang-python=\"`logs_transaction_stream`\" pulumi-lang-yaml=\"`logsTransactionStream`\" pulumi-lang-java=\"`logsTransactionStream`\"\u003e`logsTransactionStream`\u003c/span\u003e (one group by item is required) list stream source.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of indexes.\n"
                },
                "queryString": {
                    "type": "string",
                    "description": "Widget query.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetListStreamDefinitionRequestQuerySort:DashboardWidgetListStreamDefinitionRequestQuerySort",
                    "description": "The facet and order to sort the data, for example: `{\"column\": \"time\", \"order\": \"desc\"}`.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource"
            ]
        },
        "datadog:index/DashboardWidgetListStreamDefinitionRequestQueryGroupBy:DashboardWidgetListStreamDefinitionRequestQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "Facet name\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetListStreamDefinitionRequestQuerySort:DashboardWidgetListStreamDefinitionRequestQuerySort": {
            "properties": {
                "column": {
                    "type": "string",
                    "description": "The facet path for the column.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "column",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQueryComputeQuery:DashboardWidgetLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetLogQueryGroupBy:DashboardWidgetLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetLogQueryMultiCompute:DashboardWidgetLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetLogQueryComputeQuery:DashboardWidgetLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetLogQueryGroupBy:DashboardWidgetLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQueryGroupBySortQuery:DashboardWidgetLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetLogQueryGroupBySortQuery:DashboardWidgetLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetLogQueryMultiCompute:DashboardWidgetLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetLogStreamDefinition:DashboardWidgetLogStreamDefinition": {
            "properties": {
                "columns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Stringified list of columns to use, for example: `[\"column1\",\"column2\",\"column3\"]`.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "messageDisplay": {
                    "type": "string",
                    "description": "The number of log lines to display. Valid values are \u003cspan pulumi-lang-nodejs=\"`inline`\" pulumi-lang-dotnet=\"`Inline`\" pulumi-lang-go=\"`inline`\" pulumi-lang-python=\"`inline`\" pulumi-lang-yaml=\"`inline`\" pulumi-lang-java=\"`inline`\"\u003e`inline`\u003c/span\u003e, `expanded-md`, `expanded-lg`.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query to use in the widget.\n"
                },
                "showDateColumn": {
                    "type": "boolean",
                    "description": "If the date column should be displayed.\n"
                },
                "showMessageColumn": {
                    "type": "boolean",
                    "description": "If the message column should be displayed.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogStreamDefinitionSort:DashboardWidgetLogStreamDefinitionSort",
                    "description": "The facet and order to sort the data, for example: `{\"column\": \"time\", \"order\": \"desc\"}`.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetLogStreamDefinitionSort:DashboardWidgetLogStreamDefinitionSort": {
            "properties": {
                "column": {
                    "type": "string",
                    "description": "The facet path for the column.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "column",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetManageStatusDefinition:DashboardWidgetManageStatusDefinition": {
            "properties": {
                "colorPreference": {
                    "type": "string",
                    "description": "Whether to colorize text or background. Valid values are \u003cspan pulumi-lang-nodejs=\"`background`\" pulumi-lang-dotnet=\"`Background`\" pulumi-lang-go=\"`background`\" pulumi-lang-python=\"`background`\" pulumi-lang-yaml=\"`background`\" pulumi-lang-java=\"`background`\"\u003e`background`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`text`\" pulumi-lang-dotnet=\"`Text`\" pulumi-lang-go=\"`text`\" pulumi-lang-python=\"`text`\" pulumi-lang-yaml=\"`text`\" pulumi-lang-java=\"`text`\"\u003e`text`\u003c/span\u003e.\n"
                },
                "displayFormat": {
                    "type": "string",
                    "description": "The display setting to use. Valid values are \u003cspan pulumi-lang-nodejs=\"`counts`\" pulumi-lang-dotnet=\"`Counts`\" pulumi-lang-go=\"`counts`\" pulumi-lang-python=\"`counts`\" pulumi-lang-yaml=\"`counts`\" pulumi-lang-java=\"`counts`\"\u003e`counts`\u003c/span\u003e, `countsAndList`, \u003cspan pulumi-lang-nodejs=\"`list`\" pulumi-lang-dotnet=\"`List`\" pulumi-lang-go=\"`list`\" pulumi-lang-python=\"`list`\" pulumi-lang-yaml=\"`list`\" pulumi-lang-java=\"`list`\"\u003e`list`\u003c/span\u003e.\n"
                },
                "hideZeroCounts": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to hide empty categories.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query to use in the widget.\n"
                },
                "showLastTriggered": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to show when monitors/groups last triggered.\n"
                },
                "showPriority": {
                    "type": "boolean",
                    "description": "Whether to show the priorities column.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The method to sort the monitors. Valid values are \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`group`\" pulumi-lang-dotnet=\"`Group`\" pulumi-lang-go=\"`group`\" pulumi-lang-python=\"`group`\" pulumi-lang-yaml=\"`group`\" pulumi-lang-java=\"`group`\"\u003e`group`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`triggered`\" pulumi-lang-dotnet=\"`Triggered`\" pulumi-lang-go=\"`triggered`\" pulumi-lang-python=\"`triggered`\" pulumi-lang-yaml=\"`triggered`\" pulumi-lang-java=\"`triggered`\"\u003e`triggered`\u003c/span\u003e, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`.\n"
                },
                "summaryType": {
                    "type": "string",
                    "description": "The summary type to use. Valid values are \u003cspan pulumi-lang-nodejs=\"`monitors`\" pulumi-lang-dotnet=\"`Monitors`\" pulumi-lang-go=\"`monitors`\" pulumi-lang-python=\"`monitors`\" pulumi-lang-yaml=\"`monitors`\" pulumi-lang-java=\"`monitors`\"\u003e`monitors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`groups`\" pulumi-lang-dotnet=\"`Groups`\" pulumi-lang-go=\"`groups`\" pulumi-lang-python=\"`groups`\" pulumi-lang-yaml=\"`groups`\" pulumi-lang-java=\"`groups`\"\u003e`groups`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetNoteDefinition:DashboardWidgetNoteDefinition": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "The background color of the note.\n"
                },
                "content": {
                    "type": "string",
                    "description": "The content of the note.\n"
                },
                "fontSize": {
                    "type": "string",
                    "description": "The size of the text.\n"
                },
                "hasPadding": {
                    "type": "boolean",
                    "description": "Whether to add padding or not. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "showTick": {
                    "type": "boolean",
                    "description": "Whether to show a tick or not.\n"
                },
                "textAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's text. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "tickEdge": {
                    "type": "string",
                    "description": "When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`bottom`\" pulumi-lang-dotnet=\"`Bottom`\" pulumi-lang-go=\"`bottom`\" pulumi-lang-python=\"`bottom`\" pulumi-lang-yaml=\"`bottom`\" pulumi-lang-java=\"`bottom`\"\u003e`bottom`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`top`\" pulumi-lang-dotnet=\"`Top`\" pulumi-lang-go=\"`top`\" pulumi-lang-python=\"`top`\" pulumi-lang-yaml=\"`top`\" pulumi-lang-java=\"`top`\"\u003e`top`\u003c/span\u003e.\n"
                },
                "tickPos": {
                    "type": "string",
                    "description": "When `tick = true`, a string with a percent sign indicating the position of the tick, for example: \u003cspan pulumi-lang-nodejs=\"`tickPos \" pulumi-lang-dotnet=\"`TickPos \" pulumi-lang-go=\"`tickPos \" pulumi-lang-python=\"`tick_pos \" pulumi-lang-yaml=\"`tickPos \" pulumi-lang-java=\"`tickPos \"\u003e`tickPos \u003c/span\u003e= \"50%\"` is centered alignment.\n"
                },
                "verticalAlign": {
                    "type": "string",
                    "description": "The vertical alignment for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`top`\" pulumi-lang-dotnet=\"`Top`\" pulumi-lang-go=\"`top`\" pulumi-lang-python=\"`top`\" pulumi-lang-yaml=\"`top`\" pulumi-lang-java=\"`top`\"\u003e`top`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bottom`\" pulumi-lang-dotnet=\"`Bottom`\" pulumi-lang-go=\"`bottom`\" pulumi-lang-python=\"`bottom`\" pulumi-lang-yaml=\"`bottom`\" pulumi-lang-java=\"`bottom`\"\u003e`bottom`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "content"
            ]
        },
        "datadog:index/DashboardWidgetPowerpackDefinition:DashboardWidgetPowerpackDefinition": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "The background color of the powerpack title.\n"
                },
                "bannerImg": {
                    "type": "string",
                    "description": "URL of image to display as a banner for the powerpack.\n"
                },
                "powerpackId": {
                    "type": "string",
                    "description": "UUID of the associated powerpack.\n"
                },
                "showTitle": {
                    "type": "boolean",
                    "description": "Whether to show the title of the powerpack.\n"
                },
                "templateVariables": {
                    "$ref": "#/types/datadog:index/DashboardWidgetPowerpackDefinitionTemplateVariables:DashboardWidgetPowerpackDefinitionTemplateVariables",
                    "description": "The list of template variables for this powerpack.\n"
                },
                "title": {
                    "type": "string",
                    "description": "Title of the powerpack.\n"
                }
            },
            "type": "object",
            "required": [
                "powerpackId"
            ]
        },
        "datadog:index/DashboardWidgetPowerpackDefinitionTemplateVariables:DashboardWidgetPowerpackDefinitionTemplateVariables": {
            "properties": {
                "controlledByPowerpacks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetPowerpackDefinitionTemplateVariablesControlledByPowerpack:DashboardWidgetPowerpackDefinitionTemplateVariablesControlledByPowerpack"
                    },
                    "description": "Template variables controlled at the powerpack level.\n"
                },
                "controlledExternallies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetPowerpackDefinitionTemplateVariablesControlledExternally:DashboardWidgetPowerpackDefinitionTemplateVariablesControlledExternally"
                    },
                    "description": "Template variables controlled by the external resource, such as the dashboard this powerpack is on.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetPowerpackDefinitionTemplateVariablesControlledByPowerpack:DashboardWidgetPowerpackDefinitionTemplateVariablesControlledByPowerpack": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the variable.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "The tag prefix associated with the variable. Only tags with this prefix appear in the variable dropdown.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "One or many template variable values within the saved view, which will be unioned together using `OR` if more than one is specified.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "values"
            ]
        },
        "datadog:index/DashboardWidgetPowerpackDefinitionTemplateVariablesControlledExternally:DashboardWidgetPowerpackDefinitionTemplateVariablesControlledExternally": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the variable.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "The tag prefix associated with the variable. Only tags with this prefix appear in the variable dropdown.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "One or many template variable values within the saved view, which will be unioned together using `OR` if more than one is specified.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "values"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinition:DashboardWidgetQueryTableDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionCustomLink:DashboardWidgetQueryTableDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hasSearchBar": {
                    "type": "string",
                    "description": "Controls the display of the search bar. Valid values are \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequest:DashboardWidgetQueryTableDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmStatsQuery`\" pulumi-lang-dotnet=\"`ApmStatsQuery`\" pulumi-lang-go=\"`apmStatsQuery`\" pulumi-lang-python=\"`apm_stats_query`\" pulumi-lang-yaml=\"`apmStatsQuery`\" pulumi-lang-java=\"`apmStatsQuery`\"\u003e`apmStatsQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionCustomLink:DashboardWidgetQueryTableDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequest:DashboardWidgetQueryTableDefinitionRequest": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregator to use for time aggregation. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "alias": {
                    "type": "string",
                    "description": "The alias for the column name (defaults to metric name).\n"
                },
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "apmStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestApmStatsQuery:DashboardWidgetQueryTableDefinitionRequestApmStatsQuery"
                },
                "cellDisplayModes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestConditionalFormat:DashboardWidgetQueryTableDefinitionRequestConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormula:DashboardWidgetQueryTableDefinitionRequestFormula"
                    }
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of lines to show in the table.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The sort order for the rows. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestProcessQuery:DashboardWidgetQueryTableDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQuery:DashboardWidgetQueryTableDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "textFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestTextFormat:DashboardWidgetQueryTableDefinitionRequestTextFormat"
                    },
                    "description": "Text formats define how to format text in table widget content. Multiple \u003cspan pulumi-lang-nodejs=\"`textFormats`\" pulumi-lang-dotnet=\"`TextFormats`\" pulumi-lang-go=\"`textFormats`\" pulumi-lang-python=\"`text_formats`\" pulumi-lang-yaml=\"`textFormats`\" pulumi-lang-java=\"`textFormats`\"\u003e`textFormats`\u003c/span\u003e blocks are allowed using the structure below. This resource is in beta and is subject to change.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestApmStatsQuery:DashboardWidgetQueryTableDefinitionRequestApmStatsQuery": {
            "properties": {
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumn:DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumn"
                    },
                    "description": "Column properties used by the front end for display.\n"
                },
                "env": {
                    "type": "string",
                    "description": "The environment name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The operation name associated with the service.\n"
                },
                "primaryTag": {
                    "type": "string",
                    "description": "The organization's host group name and value.\n"
                },
                "resource": {
                    "type": "string",
                    "description": "The resource name.\n"
                },
                "rowType": {
                    "type": "string",
                    "description": "The level of detail for the request. Valid values are \u003cspan pulumi-lang-nodejs=\"`service`\" pulumi-lang-dotnet=\"`Service`\" pulumi-lang-go=\"`service`\" pulumi-lang-python=\"`service`\" pulumi-lang-yaml=\"`service`\" pulumi-lang-java=\"`service`\"\u003e`service`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`resource`\" pulumi-lang-dotnet=\"`Resource`\" pulumi-lang-go=\"`resource`\" pulumi-lang-python=\"`resource`\" pulumi-lang-yaml=\"`resource`\" pulumi-lang-java=\"`resource`\"\u003e`resource`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`span`\" pulumi-lang-dotnet=\"`Span`\" pulumi-lang-go=\"`span`\" pulumi-lang-python=\"`span`\" pulumi-lang-yaml=\"`span`\" pulumi-lang-java=\"`span`\"\u003e`span`\u003c/span\u003e.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The service name.\n"
                }
            },
            "type": "object",
            "required": [
                "env",
                "name",
                "primaryTag",
                "rowType",
                "service"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumn:DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumn": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "A user-assigned alias for the column.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The column name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestConditionalFormat:DashboardWidgetQueryTableDefinitionRequestConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormula:DashboardWidgetQueryTableDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "cellDisplayModeOptions": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaCellDisplayModeOptions:DashboardWidgetQueryTableDefinitionRequestFormulaCellDisplayModeOptions",
                    "description": "A list of display modes for each table cell.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormat:DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaLimit:DashboardWidgetQueryTableDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormat:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaStyle:DashboardWidgetQueryTableDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaCellDisplayModeOptions:DashboardWidgetQueryTableDefinitionRequestFormulaCellDisplayModeOptions": {
            "properties": {
                "trendType": {
                    "type": "string",
                    "description": "The type of trend line to display. Valid values are \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`line`\" pulumi-lang-dotnet=\"`Line`\" pulumi-lang-go=\"`line`\" pulumi-lang-python=\"`line`\" pulumi-lang-yaml=\"`line`\" pulumi-lang-java=\"`line`\"\u003e`line`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bars`\" pulumi-lang-dotnet=\"`Bars`\" pulumi-lang-go=\"`bars`\" pulumi-lang-python=\"`bars`\" pulumi-lang-yaml=\"`bars`\" pulumi-lang-java=\"`bars`\"\u003e`bars`\u003c/span\u003e.\n"
                },
                "yScale": {
                    "type": "string",
                    "description": "The scale of the y-axis. Valid values are \u003cspan pulumi-lang-nodejs=\"`shared`\" pulumi-lang-dotnet=\"`Shared`\" pulumi-lang-go=\"`shared`\" pulumi-lang-python=\"`shared`\" pulumi-lang-yaml=\"`shared`\" pulumi-lang-java=\"`shared`\"\u003e`shared`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`independent`\" pulumi-lang-dotnet=\"`Independent`\" pulumi-lang-go=\"`independent`\" pulumi-lang-python=\"`independent`\" pulumi-lang-yaml=\"`independent`\" pulumi-lang-java=\"`independent`\"\u003e`independent`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormat:DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaLimit:DashboardWidgetQueryTableDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormat:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestFormulaStyle:DashboardWidgetQueryTableDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestProcessQuery:DashboardWidgetQueryTableDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQuery:DashboardWidgetQueryTableDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryCloudCostQuery:DashboardWidgetQueryTableDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQuery:DashboardWidgetQueryTableDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery:DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery:DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQuerySloQuery:DashboardWidgetQueryTableDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryCloudCostQuery:DashboardWidgetQueryTableDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQuery:DashboardWidgetQueryTableDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch:DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch:DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery:DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery:DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestQuerySloQuery:DashboardWidgetQueryTableDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestTextFormat:DashboardWidgetQueryTableDefinitionRequestTextFormat": {
            "properties": {
                "textFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormat:DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormat"
                    },
                    "description": "The text format to apply to the items in a table widget column.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormat:DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormat": {
            "properties": {
                "customBgColor": {
                    "type": "string",
                    "description": "The custom color palette to apply to the background.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The custom color palette to apply to the foreground text.\n"
                },
                "match": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormatMatch:DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormatMatch",
                    "description": "Match rule for the table widget text format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e.\n"
                },
                "replace": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormatReplace:DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormatReplace",
                    "description": "Match rule for the table widget text format.\n"
                }
            },
            "type": "object",
            "required": [
                "match"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormatMatch:DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormatMatch": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Match or compare option. Valid values are \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`isNot`\" pulumi-lang-dotnet=\"`IsNot`\" pulumi-lang-go=\"`isNot`\" pulumi-lang-python=\"`is_not`\" pulumi-lang-yaml=\"`isNot`\" pulumi-lang-java=\"`isNot`\"\u003e`isNot`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`doesNotContain`\" pulumi-lang-dotnet=\"`DoesNotContain`\" pulumi-lang-go=\"`doesNotContain`\" pulumi-lang-python=\"`does_not_contain`\" pulumi-lang-yaml=\"`doesNotContain`\" pulumi-lang-java=\"`doesNotContain`\"\u003e`doesNotContain`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`startsWith`\" pulumi-lang-dotnet=\"`StartsWith`\" pulumi-lang-go=\"`startsWith`\" pulumi-lang-python=\"`starts_with`\" pulumi-lang-yaml=\"`startsWith`\" pulumi-lang-java=\"`startsWith`\"\u003e`startsWith`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`endsWith`\" pulumi-lang-dotnet=\"`EndsWith`\" pulumi-lang-go=\"`endsWith`\" pulumi-lang-python=\"`ends_with`\" pulumi-lang-yaml=\"`endsWith`\" pulumi-lang-java=\"`endsWith`\"\u003e`endsWith`\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Table Widget Match String.\n"
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormatReplace:DashboardWidgetQueryTableDefinitionRequestTextFormatTextFormatReplace": {
            "properties": {
                "substring": {
                    "type": "string",
                    "description": "Text that will be replaced. Must be used with type \u003cspan pulumi-lang-nodejs=\"`substring`\" pulumi-lang-dotnet=\"`Substring`\" pulumi-lang-go=\"`substring`\" pulumi-lang-python=\"`substring`\" pulumi-lang-yaml=\"`substring`\" pulumi-lang-java=\"`substring`\"\u003e`substring`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Table widget text format replace all type.\n"
                },
                "with": {
                    "type": "string",
                    "description": "Table Widget Match String.\n"
                }
            },
            "type": "object",
            "required": [
                "type",
                "with"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinition:DashboardWidgetQueryValueDefinition": {
            "properties": {
                "autoscale": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to automatically scale the tile.\n"
                },
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionCustomLink:DashboardWidgetQueryValueDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "customUnit": {
                    "type": "string",
                    "description": "The unit for the value displayed in the widget.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "precision": {
                    "type": "integer",
                    "description": "The precision to use when displaying the tile.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequest:DashboardWidgetQueryValueDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "textAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's text. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "timeseriesBackground": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionTimeseriesBackground:DashboardWidgetQueryValueDefinitionTimeseriesBackground",
                    "description": "Set a timeseries on the widget background.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionCustomLink:DashboardWidgetQueryValueDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequest:DashboardWidgetQueryValueDefinitionRequest": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregator to use for time aggregation. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "auditQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQuery:DashboardWidgetQueryValueDefinitionRequestAuditQuery",
                    "description": "The query to use for this widget.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestConditionalFormat:DashboardWidgetQueryValueDefinitionRequestConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormula:DashboardWidgetQueryValueDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestProcessQuery:DashboardWidgetQueryValueDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQuery:DashboardWidgetQueryValueDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQuery:DashboardWidgetQueryValueDefinitionRequestAuditQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery:DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy:DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute:DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery:DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy:DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery:DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery:DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute:DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestConditionalFormat:DashboardWidgetQueryValueDefinitionRequestConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormula:DashboardWidgetQueryValueDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormat:DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaLimit:DashboardWidgetQueryValueDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormat:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaStyle:DashboardWidgetQueryValueDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormat:DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaLimit:DashboardWidgetQueryValueDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormat:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestFormulaStyle:DashboardWidgetQueryValueDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestProcessQuery:DashboardWidgetQueryValueDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQuery:DashboardWidgetQueryValueDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryCloudCostQuery:DashboardWidgetQueryValueDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQuery:DashboardWidgetQueryValueDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery:DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery:DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQuerySloQuery:DashboardWidgetQueryValueDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryCloudCostQuery:DashboardWidgetQueryValueDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQuery:DashboardWidgetQueryValueDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch:DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch:DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery:DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery:DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionRequestQuerySloQuery:DashboardWidgetQueryValueDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionTimeseriesBackground:DashboardWidgetQueryValueDefinitionTimeseriesBackground": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Whether the Timeseries is made using an area or bars. Valid values are \u003cspan pulumi-lang-nodejs=\"`bars`\" pulumi-lang-dotnet=\"`Bars`\" pulumi-lang-go=\"`bars`\" pulumi-lang-python=\"`bars`\" pulumi-lang-yaml=\"`bars`\" pulumi-lang-java=\"`bars`\"\u003e`bars`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e.\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis:DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis",
                    "description": "A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis:DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQueryComputeQuery:DashboardWidgetRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetRumQueryGroupBy:DashboardWidgetRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetRumQueryMultiCompute:DashboardWidgetRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetRumQueryComputeQuery:DashboardWidgetRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetRumQueryGroupBy:DashboardWidgetRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQueryGroupBySortQuery:DashboardWidgetRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetRumQueryGroupBySortQuery:DashboardWidgetRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetRumQueryMultiCompute:DashboardWidgetRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetRunWorkflowDefinition:DashboardWidgetRunWorkflowDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetRunWorkflowDefinitionCustomLink:DashboardWidgetRunWorkflowDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "inputs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetRunWorkflowDefinitionInput:DashboardWidgetRunWorkflowDefinitionInput"
                    },
                    "description": "Array of workflow inputs to map to dashboard template variables.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "workflowId": {
                    "type": "string",
                    "description": "Workflow ID\n"
                }
            },
            "type": "object",
            "required": [
                "workflowId"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "workflowId"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetRunWorkflowDefinitionCustomLink:DashboardWidgetRunWorkflowDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetRunWorkflowDefinitionInput:DashboardWidgetRunWorkflowDefinitionInput": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the workflow input.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Dashboard template variable. Can be suffixed with `.value` or `.key`.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinition:DashboardWidgetScatterplotDefinition": {
            "properties": {
                "colorByGroups": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of groups used for colors.\n"
                },
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionCustomLink:DashboardWidgetScatterplotDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "request": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequest:DashboardWidgetScatterplotDefinitionRequest",
                    "description": "A nested block describing the request to use when displaying the widget. Exactly one \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block is allowed using the structure below.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "xaxis": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionXaxis:DashboardWidgetScatterplotDefinitionXaxis",
                    "description": "A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionYaxis:DashboardWidgetScatterplotDefinitionYaxis",
                    "description": "A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionCustomLink:DashboardWidgetScatterplotDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequest:DashboardWidgetScatterplotDefinitionRequest": {
            "properties": {
                "scatterplotTables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTable:DashboardWidgetScatterplotDefinitionRequestScatterplotTable"
                    },
                    "description": "Scatterplot request containing formulas and functions.\n"
                },
                "xes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestX:DashboardWidgetScatterplotDefinitionRequestX"
                    },
                    "description": "The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmStatsQuery`\" pulumi-lang-dotnet=\"`ApmStatsQuery`\" pulumi-lang-go=\"`apmStatsQuery`\" pulumi-lang-python=\"`apm_stats_query`\" pulumi-lang-yaml=\"`apmStatsQuery`\" pulumi-lang-java=\"`apmStatsQuery`\"\u003e`apmStatsQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the block).\n"
                },
                "ys": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestY:DashboardWidgetScatterplotDefinitionRequestY"
                    },
                    "description": "The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmStatsQuery`\" pulumi-lang-dotnet=\"`ApmStatsQuery`\" pulumi-lang-go=\"`apmStatsQuery`\" pulumi-lang-python=\"`apm_stats_query`\" pulumi-lang-yaml=\"`apmStatsQuery`\" pulumi-lang-java=\"`apmStatsQuery`\"\u003e`apmStatsQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the block).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTable:DashboardWidgetScatterplotDefinitionRequestScatterplotTable": {
            "properties": {
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula:DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula"
                    }
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery"
                    }
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula:DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "dimension": {
                    "type": "string",
                    "description": "Dimension of the Scatterplot. Valid values are \u003cspan pulumi-lang-nodejs=\"`x`\" pulumi-lang-dotnet=\"`X`\" pulumi-lang-go=\"`x`\" pulumi-lang-python=\"`x`\" pulumi-lang-yaml=\"`x`\" pulumi-lang-java=\"`x`\"\u003e`x`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`y`\" pulumi-lang-dotnet=\"`Y`\" pulumi-lang-go=\"`y`\" pulumi-lang-python=\"`y`\" pulumi-lang-yaml=\"`y`\" pulumi-lang-java=\"`y`\"\u003e`y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`radius`\" pulumi-lang-dotnet=\"`Radius`\" pulumi-lang-go=\"`radius`\" pulumi-lang-python=\"`radius`\" pulumi-lang-yaml=\"`radius`\" pulumi-lang-java=\"`radius`\"\u003e`radius`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`color`\" pulumi-lang-dotnet=\"`Color`\" pulumi-lang-go=\"`color`\" pulumi-lang-python=\"`color`\" pulumi-lang-yaml=\"`color`\" pulumi-lang-java=\"`color`\"\u003e`color`\u003c/span\u003e.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                }
            },
            "type": "object",
            "required": [
                "dimension",
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryCloudCostQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuerySloQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryCloudCostQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFields:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFields:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFieldsSort:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFieldsSort:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuerySloQuery:DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestX:DashboardWidgetScatterplotDefinitionRequestX": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "Aggregator used for the request. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestXProcessQuery:DashboardWidgetScatterplotDefinitionRequestXProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestXProcessQuery:DashboardWidgetScatterplotDefinitionRequestXProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestY:DashboardWidgetScatterplotDefinitionRequestY": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "Aggregator used for the request. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinitionRequestYProcessQuery:DashboardWidgetScatterplotDefinitionRequestYProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionRequestYProcessQuery:DashboardWidgetScatterplotDefinitionRequestYProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionXaxis:DashboardWidgetScatterplotDefinitionXaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetScatterplotDefinitionYaxis:DashboardWidgetScatterplotDefinitionYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQueryComputeQuery:DashboardWidgetSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSecurityQueryGroupBy:DashboardWidgetSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSecurityQueryMultiCompute:DashboardWidgetSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetSecurityQueryComputeQuery:DashboardWidgetSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetSecurityQueryGroupBy:DashboardWidgetSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQueryGroupBySortQuery:DashboardWidgetSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSecurityQueryGroupBySortQuery:DashboardWidgetSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetSecurityQueryMultiCompute:DashboardWidgetSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetServiceLevelObjectiveDefinition:DashboardWidgetServiceLevelObjectiveDefinition": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "globalTimeTarget": {
                    "type": "string",
                    "description": "The global time target of the widget.\n"
                },
                "showErrorBudget": {
                    "type": "boolean",
                    "description": "Whether to show the error budget or not.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "The ID of the service level objective used by the widget.\n"
                },
                "timeWindows": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of time windows to display in the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`7d`\" pulumi-lang-dotnet=\"`7d`\" pulumi-lang-go=\"`7d`\" pulumi-lang-python=\"`7d`\" pulumi-lang-yaml=\"`7d`\" pulumi-lang-java=\"`7d`\"\u003e`7d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30d`\" pulumi-lang-dotnet=\"`30d`\" pulumi-lang-go=\"`30d`\" pulumi-lang-python=\"`30d`\" pulumi-lang-yaml=\"`30d`\" pulumi-lang-java=\"`30d`\"\u003e`30d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`90d`\" pulumi-lang-dotnet=\"`90d`\" pulumi-lang-go=\"`90d`\" pulumi-lang-python=\"`90d`\" pulumi-lang-yaml=\"`90d`\" pulumi-lang-java=\"`90d`\"\u003e`90d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`previousWeek`\" pulumi-lang-dotnet=\"`PreviousWeek`\" pulumi-lang-go=\"`previousWeek`\" pulumi-lang-python=\"`previous_week`\" pulumi-lang-yaml=\"`previousWeek`\" pulumi-lang-java=\"`previousWeek`\"\u003e`previousWeek`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`previousMonth`\" pulumi-lang-dotnet=\"`PreviousMonth`\" pulumi-lang-go=\"`previousMonth`\" pulumi-lang-python=\"`previous_month`\" pulumi-lang-yaml=\"`previousMonth`\" pulumi-lang-java=\"`previousMonth`\"\u003e`previousMonth`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`globalTime`\" pulumi-lang-dotnet=\"`GlobalTime`\" pulumi-lang-go=\"`globalTime`\" pulumi-lang-python=\"`global_time`\" pulumi-lang-yaml=\"`globalTime`\" pulumi-lang-java=\"`globalTime`\"\u003e`globalTime`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "viewMode": {
                    "type": "string",
                    "description": "The view mode for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`component`\" pulumi-lang-dotnet=\"`Component`\" pulumi-lang-go=\"`component`\" pulumi-lang-python=\"`component`\" pulumi-lang-yaml=\"`component`\" pulumi-lang-java=\"`component`\"\u003e`component`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`both`\" pulumi-lang-dotnet=\"`Both`\" pulumi-lang-go=\"`both`\" pulumi-lang-python=\"`both`\" pulumi-lang-yaml=\"`both`\" pulumi-lang-java=\"`both`\"\u003e`both`\u003c/span\u003e.\n"
                },
                "viewType": {
                    "type": "string",
                    "description": "The type of view to use when displaying the widget. Only \u003cspan pulumi-lang-nodejs=\"`detail`\" pulumi-lang-dotnet=\"`Detail`\" pulumi-lang-go=\"`detail`\" pulumi-lang-python=\"`detail`\" pulumi-lang-yaml=\"`detail`\" pulumi-lang-java=\"`detail`\"\u003e`detail`\u003c/span\u003e is supported.\n"
                }
            },
            "type": "object",
            "required": [
                "sloId",
                "timeWindows",
                "viewMode",
                "viewType"
            ]
        },
        "datadog:index/DashboardWidgetServicemapDefinition:DashboardWidgetServicemapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetServicemapDefinitionCustomLink:DashboardWidgetServicemapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Your environment and primary tag (or `*` if enabled for your account).\n"
                },
                "service": {
                    "type": "string",
                    "description": "The ID of the service to map.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "filters",
                "service"
            ]
        },
        "datadog:index/DashboardWidgetServicemapDefinitionCustomLink:DashboardWidgetServicemapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSloListDefinition:DashboardWidgetSloListDefinition": {
            "properties": {
                "request": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSloListDefinitionRequest:DashboardWidgetSloListDefinitionRequest",
                    "description": "A nested block describing the request to use when displaying the widget. Exactly one \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block is allowed.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "request"
            ]
        },
        "datadog:index/DashboardWidgetSloListDefinitionRequest:DashboardWidgetSloListDefinitionRequest": {
            "properties": {
                "query": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSloListDefinitionRequestQuery:DashboardWidgetSloListDefinitionRequestQuery",
                    "description": "Updated SLO List widget.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "The request type for the SLO List request. Valid values are \u003cspan pulumi-lang-nodejs=\"`sloList`\" pulumi-lang-dotnet=\"`SloList`\" pulumi-lang-go=\"`sloList`\" pulumi-lang-python=\"`slo_list`\" pulumi-lang-yaml=\"`sloList`\" pulumi-lang-java=\"`sloList`\"\u003e`sloList`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "query",
                "requestType"
            ]
        },
        "datadog:index/DashboardWidgetSloListDefinitionRequestQuery:DashboardWidgetSloListDefinitionRequestQuery": {
            "properties": {
                "limit": {
                    "type": "integer",
                    "description": "Maximum number of results to display in the table. Defaults to \u003cspan pulumi-lang-nodejs=\"`100`\" pulumi-lang-dotnet=\"`100`\" pulumi-lang-go=\"`100`\" pulumi-lang-python=\"`100`\" pulumi-lang-yaml=\"`100`\" pulumi-lang-java=\"`100`\"\u003e`100`\u003c/span\u003e.\n"
                },
                "queryString": {
                    "type": "string",
                    "description": "Widget query.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSloListDefinitionRequestQuerySort:DashboardWidgetSloListDefinitionRequestQuerySort",
                    "description": "The facet and order to sort the data, for example: `{\"column\": \"status.sli\", \"order\": \"desc\"}`.\n"
                }
            },
            "type": "object",
            "required": [
                "queryString"
            ]
        },
        "datadog:index/DashboardWidgetSloListDefinitionRequestQuerySort:DashboardWidgetSloListDefinitionRequestQuerySort": {
            "properties": {
                "column": {
                    "type": "string",
                    "description": "The facet path for the column.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "column",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetSplitGraphDefinition:DashboardWidgetSplitGraphDefinition": {
            "properties": {
                "hasUniformYAxes": {
                    "type": "boolean",
                    "description": "Normalize y axes across graphs.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "size": {
                    "type": "string",
                    "description": "Size of the individual graphs in the split.\n"
                },
                "sourceWidgetDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinitionSourceWidgetDefinition:DashboardWidgetSplitGraphDefinitionSourceWidgetDefinition",
                    "description": "The original widget we are splitting on.\n"
                },
                "splitConfig": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfig:DashboardWidgetSplitGraphDefinitionSplitConfig",
                    "description": "Encapsulates all user choices about how to split a graph.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                }
            },
            "type": "object",
            "required": [
                "size",
                "sourceWidgetDefinition",
                "splitConfig"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "size",
                        "sourceWidgetDefinition",
                        "splitConfig"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetSplitGraphDefinitionSourceWidgetDefinition:DashboardWidgetSplitGraphDefinitionSourceWidgetDefinition": {
            "properties": {
                "changeDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetChangeDefinition:DashboardWidgetChangeDefinition",
                    "description": "The definition for a Change widget.\n"
                },
                "geomapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetGeomapDefinition:DashboardWidgetGeomapDefinition",
                    "description": "The definition for a Geomap widget.\n"
                },
                "queryTableDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryTableDefinition:DashboardWidgetQueryTableDefinition",
                    "description": "The definition for a Query Table widget.\n"
                },
                "queryValueDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetQueryValueDefinition:DashboardWidgetQueryValueDefinition",
                    "description": "The definition for a Query Value widget.\n"
                },
                "scatterplotDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetScatterplotDefinition:DashboardWidgetScatterplotDefinition",
                    "description": "The definition for a Scatterplot widget.\n"
                },
                "sunburstDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinition:DashboardWidgetSunburstDefinition",
                    "description": "The definition for a Sunburst widget.\n"
                },
                "timeseriesDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinition:DashboardWidgetTimeseriesDefinition",
                    "description": "The definition for a Timeseries widget.\n"
                },
                "toplistDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinition:DashboardWidgetToplistDefinition",
                    "description": "The definition for a Toplist widget.\n"
                },
                "treemapDefinition": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinition:DashboardWidgetTreemapDefinition",
                    "description": "The definition for a Treemap widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfig:DashboardWidgetSplitGraphDefinitionSplitConfig": {
            "properties": {
                "limit": {
                    "type": "integer",
                    "description": "Maximum number of graphs to display in the widget.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigSort:DashboardWidgetSplitGraphDefinitionSplitConfigSort",
                    "description": "Controls the order in which graphs appear in the split.\n"
                },
                "splitDimensions": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigSplitDimensions:DashboardWidgetSplitGraphDefinitionSplitConfigSplitDimensions",
                    "description": "The property by which the graph splits\n"
                },
                "staticSplits": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigStaticSplit:DashboardWidgetSplitGraphDefinitionSplitConfigStaticSplit"
                    },
                    "description": "The property by which the graph splits\n"
                }
            },
            "type": "object",
            "required": [
                "sort",
                "splitDimensions"
            ]
        },
        "datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigSort:DashboardWidgetSplitGraphDefinitionSplitConfigSort": {
            "properties": {
                "compute": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigSortCompute:DashboardWidgetSplitGraphDefinitionSplitConfigSortCompute",
                    "description": "Defines the metric and aggregation used as the sort value\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "order"
            ]
        },
        "datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigSortCompute:DashboardWidgetSplitGraphDefinitionSplitConfigSortCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "How to aggregate the sort metric for the purposes of ordering.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric to use for sorting graphs.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigSplitDimensions:DashboardWidgetSplitGraphDefinitionSplitConfigSplitDimensions": {
            "properties": {
                "oneGraphPer": {
                    "type": "string",
                    "description": "The system interprets this attribute differently depending on the data source of the query being split. For metrics, it's a tag. For the events platform, it's an attribute or tag.\n"
                }
            },
            "type": "object",
            "required": [
                "oneGraphPer"
            ]
        },
        "datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigStaticSplit:DashboardWidgetSplitGraphDefinitionSplitConfigStaticSplit": {
            "properties": {
                "splitVectors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigStaticSplitSplitVector:DashboardWidgetSplitGraphDefinitionSplitConfigStaticSplitSplitVector"
                    },
                    "description": "The split graph list contains a graph for each value of the split dimension.\n"
                }
            },
            "type": "object",
            "required": [
                "splitVectors"
            ]
        },
        "datadog:index/DashboardWidgetSplitGraphDefinitionSplitConfigStaticSplitSplitVector:DashboardWidgetSplitGraphDefinitionSplitConfigStaticSplitSplitVector": {
            "properties": {
                "tagKey": {
                    "type": "string"
                },
                "tagValues": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValues"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinition:DashboardWidgetSunburstDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionCustomLink:DashboardWidgetSunburstDefinitionCustomLink"
                    },
                    "description": "Nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed with the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "hideTotal": {
                    "type": "boolean",
                    "description": "Whether or not to show the total value in the widget.\n"
                },
                "legendInline": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionLegendInline:DashboardWidgetSunburstDefinitionLegendInline",
                    "description": "Used to configure the inline legend. Cannot be used in conjunction with legend*table.\n"
                },
                "legendTable": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionLegendTable:DashboardWidgetSunburstDefinitionLegendTable",
                    "description": "Used to configure the table legend. Cannot be used in conjunction with legend*inline.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequest:DashboardWidgetSunburstDefinitionRequest"
                    },
                    "description": "Nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed with the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. One of \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title. Default is 16.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetSunburstDefinitionCustomLink:DashboardWidgetSunburstDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSunburstDefinitionLegendInline:DashboardWidgetSunburstDefinitionLegendInline": {
            "properties": {
                "hidePercent": {
                    "type": "boolean",
                    "description": "Whether to hide the percentages of the groups.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Whether to hide the values of the groups.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of legend (inline or automatic). Valid values are \u003cspan pulumi-lang-nodejs=\"`inline`\" pulumi-lang-dotnet=\"`Inline`\" pulumi-lang-go=\"`inline`\" pulumi-lang-python=\"`inline`\" pulumi-lang-yaml=\"`inline`\" pulumi-lang-java=\"`inline`\"\u003e`inline`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`automatic`\" pulumi-lang-dotnet=\"`Automatic`\" pulumi-lang-go=\"`automatic`\" pulumi-lang-python=\"`automatic`\" pulumi-lang-yaml=\"`automatic`\" pulumi-lang-java=\"`automatic`\"\u003e`automatic`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionLegendTable:DashboardWidgetSunburstDefinitionLegendTable": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "The type of legend (table or none). Valid values are \u003cspan pulumi-lang-nodejs=\"`table`\" pulumi-lang-dotnet=\"`Table`\" pulumi-lang-go=\"`table`\" pulumi-lang-python=\"`table`\" pulumi-lang-yaml=\"`table`\" pulumi-lang-java=\"`table`\"\u003e`table`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequest:DashboardWidgetSunburstDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "auditQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQuery:DashboardWidgetSunburstDefinitionRequestAuditQuery",
                    "description": "The query to use for this widget.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormula:DashboardWidgetSunburstDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "networkQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQuery:DashboardWidgetSunburstDefinitionRequestNetworkQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestProcessQuery:DashboardWidgetSunburstDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQuery:DashboardWidgetSunburstDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestStyle:DashboardWidgetSunburstDefinitionRequestStyle",
                    "description": "Define style for the widget's request.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQuery:DashboardWidgetSunburstDefinitionRequestAuditQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery:DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy:DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute:DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery:DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy:DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery:DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery:DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute:DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormula:DashboardWidgetSunburstDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormat:DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaLimit:DashboardWidgetSunburstDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormat:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaStyle:DashboardWidgetSunburstDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormat:DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaLimit:DashboardWidgetSunburstDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormat:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetSunburstDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestFormulaStyle:DashboardWidgetSunburstDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQuery:DashboardWidgetSunburstDefinitionRequestNetworkQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery:DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy:DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute:DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery:DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy:DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery:DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery:DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute:DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestProcessQuery:DashboardWidgetSunburstDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQuery:DashboardWidgetSunburstDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryCloudCostQuery:DashboardWidgetSunburstDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQuery:DashboardWidgetSunburstDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryMetricQuery:DashboardWidgetSunburstDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryProcessQuery:DashboardWidgetSunburstDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQuerySloQuery:DashboardWidgetSunburstDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryCloudCostQuery:DashboardWidgetSunburstDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQuery:DashboardWidgetSunburstDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute:DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch:DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute:DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch:DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryMetricQuery:DashboardWidgetSunburstDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQueryProcessQuery:DashboardWidgetSunburstDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestQuerySloQuery:DashboardWidgetSunburstDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetSunburstDefinitionRequestStyle:DashboardWidgetSunburstDefinitionRequestStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinition:DashboardWidgetTimeseriesDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionCustomLink:DashboardWidgetTimeseriesDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "events": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionEvent:DashboardWidgetTimeseriesDefinitionEvent"
                    },
                    "description": "The definition of the event to overlay on the graph. Multiple \u003cspan pulumi-lang-nodejs=\"`event`\" pulumi-lang-dotnet=\"`Event`\" pulumi-lang-go=\"`event`\" pulumi-lang-python=\"`event`\" pulumi-lang-yaml=\"`event`\" pulumi-lang-java=\"`event`\"\u003e`event`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "legendColumns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of columns to display in the legend. Valid values are \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e.\n"
                },
                "legendLayout": {
                    "type": "string",
                    "description": "The layout of the legend displayed in the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`horizontal`\" pulumi-lang-dotnet=\"`Horizontal`\" pulumi-lang-go=\"`horizontal`\" pulumi-lang-python=\"`horizontal`\" pulumi-lang-yaml=\"`horizontal`\" pulumi-lang-java=\"`horizontal`\"\u003e`horizontal`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`vertical`\" pulumi-lang-dotnet=\"`Vertical`\" pulumi-lang-go=\"`vertical`\" pulumi-lang-python=\"`vertical`\" pulumi-lang-yaml=\"`vertical`\" pulumi-lang-java=\"`vertical`\"\u003e`vertical`\u003c/span\u003e.\n"
                },
                "legendSize": {
                    "type": "string",
                    "description": "The size of the legend displayed in the widget.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "markers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionMarker:DashboardWidgetTimeseriesDefinitionMarker"
                    },
                    "description": "A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple \u003cspan pulumi-lang-nodejs=\"`marker`\" pulumi-lang-dotnet=\"`Marker`\" pulumi-lang-go=\"`marker`\" pulumi-lang-python=\"`marker`\" pulumi-lang-yaml=\"`marker`\" pulumi-lang-java=\"`marker`\"\u003e`marker`\u003c/span\u003e blocks are allowed within a given \u003cspan pulumi-lang-nodejs=\"`tileDef`\" pulumi-lang-dotnet=\"`TileDef`\" pulumi-lang-go=\"`tileDef`\" pulumi-lang-python=\"`tile_def`\" pulumi-lang-yaml=\"`tileDef`\" pulumi-lang-java=\"`tileDef`\"\u003e`tileDef`\u003c/span\u003e block.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequest:DashboardWidgetTimeseriesDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`networkQuery`\" pulumi-lang-dotnet=\"`NetworkQuery`\" pulumi-lang-go=\"`networkQuery`\" pulumi-lang-python=\"`network_query`\" pulumi-lang-yaml=\"`networkQuery`\" pulumi-lang-java=\"`networkQuery`\"\u003e`networkQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "rightYaxis": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRightYaxis:DashboardWidgetTimeseriesDefinitionRightYaxis",
                    "description": "A nested block describing the right Y-Axis Controls. See the \u003cspan pulumi-lang-nodejs=\"`onRightYaxis`\" pulumi-lang-dotnet=\"`OnRightYaxis`\" pulumi-lang-go=\"`onRightYaxis`\" pulumi-lang-python=\"`on_right_yaxis`\" pulumi-lang-yaml=\"`onRightYaxis`\" pulumi-lang-java=\"`onRightYaxis`\"\u003e`onRightYaxis`\u003c/span\u003e property for which request will use this axis. The structure of this block is described below.\n"
                },
                "showLegend": {
                    "type": "boolean",
                    "description": "Whether or not to show the legend on this widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionYaxis:DashboardWidgetTimeseriesDefinitionYaxis",
                    "description": "A nested block describing the Y-Axis Controls. The structure of this block is described below.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionCustomLink:DashboardWidgetTimeseriesDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionEvent:DashboardWidgetTimeseriesDefinitionEvent": {
            "properties": {
                "q": {
                    "type": "string",
                    "description": "The event query to use in the widget.\n"
                },
                "tagsExecution": {
                    "type": "string",
                    "description": "The execution method for multi-value filters.\n"
                }
            },
            "type": "object",
            "required": [
                "q"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionMarker:DashboardWidgetTimeseriesDefinitionMarker": {
            "properties": {
                "displayType": {
                    "type": "string",
                    "description": "How the marker lines are displayed, options are one of {\u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`warning`\" pulumi-lang-dotnet=\"`Warning`\" pulumi-lang-go=\"`warning`\" pulumi-lang-python=\"`warning`\" pulumi-lang-yaml=\"`warning`\" pulumi-lang-java=\"`warning`\"\u003e`warning`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ok`\" pulumi-lang-dotnet=\"`Ok`\" pulumi-lang-go=\"`ok`\" pulumi-lang-python=\"`ok`\" pulumi-lang-yaml=\"`ok`\" pulumi-lang-java=\"`ok`\"\u003e`ok`\u003c/span\u003e} combined with one of {\u003cspan pulumi-lang-nodejs=\"`dashed`\" pulumi-lang-dotnet=\"`Dashed`\" pulumi-lang-go=\"`dashed`\" pulumi-lang-python=\"`dashed`\" pulumi-lang-yaml=\"`dashed`\" pulumi-lang-java=\"`dashed`\"\u003e`dashed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`solid`\" pulumi-lang-dotnet=\"`Solid`\" pulumi-lang-go=\"`solid`\" pulumi-lang-python=\"`solid`\" pulumi-lang-yaml=\"`solid`\" pulumi-lang-java=\"`solid`\"\u003e`solid`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bold`\" pulumi-lang-dotnet=\"`Bold`\" pulumi-lang-go=\"`bold`\" pulumi-lang-python=\"`bold`\" pulumi-lang-yaml=\"`bold`\" pulumi-lang-java=\"`bold`\"\u003e`bold`\u003c/span\u003e}. Example: `error dashed`.\n"
                },
                "label": {
                    "type": "string",
                    "description": "A label for the line or range.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A mathematical expression describing the marker, for example: `y \u003e 1`, `-5 \u003c y \u003c 0`, `y = 19`.\n"
                }
            },
            "type": "object",
            "required": [
                "value"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequest:DashboardWidgetTimeseriesDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "auditQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQuery:DashboardWidgetTimeseriesDefinitionRequestAuditQuery",
                    "description": "The query to use for this widget.\n"
                },
                "displayType": {
                    "type": "string",
                    "description": "How to display the marker lines. Valid values are \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bars`\" pulumi-lang-dotnet=\"`Bars`\" pulumi-lang-go=\"`bars`\" pulumi-lang-python=\"`bars`\" pulumi-lang-yaml=\"`bars`\" pulumi-lang-java=\"`bars`\"\u003e`bars`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`line`\" pulumi-lang-dotnet=\"`Line`\" pulumi-lang-go=\"`line`\" pulumi-lang-python=\"`line`\" pulumi-lang-yaml=\"`line`\" pulumi-lang-java=\"`line`\"\u003e`line`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`overlay`\" pulumi-lang-dotnet=\"`Overlay`\" pulumi-lang-go=\"`overlay`\" pulumi-lang-python=\"`overlay`\" pulumi-lang-yaml=\"`overlay`\" pulumi-lang-java=\"`overlay`\"\u003e`overlay`\u003c/span\u003e.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormula:DashboardWidgetTimeseriesDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "metadatas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestMetadata:DashboardWidgetTimeseriesDefinitionRequestMetadata"
                    },
                    "description": "Used to define expression aliases. Multiple \u003cspan pulumi-lang-nodejs=\"`metadata`\" pulumi-lang-dotnet=\"`Metadata`\" pulumi-lang-go=\"`metadata`\" pulumi-lang-python=\"`metadata`\" pulumi-lang-yaml=\"`metadata`\" pulumi-lang-java=\"`metadata`\"\u003e`metadata`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "networkQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQuery:DashboardWidgetTimeseriesDefinitionRequestNetworkQuery",
                    "description": "The query to use for this widget.\n"
                },
                "onRightYaxis": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether the request uses the right or left Y-Axis.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestProcessQuery:DashboardWidgetTimeseriesDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQuery:DashboardWidgetTimeseriesDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestStyle:DashboardWidgetTimeseriesDefinitionRequestStyle",
                    "description": "The style of the widget graph. Exactly one \u003cspan pulumi-lang-nodejs=\"`style`\" pulumi-lang-dotnet=\"`Style`\" pulumi-lang-go=\"`style`\" pulumi-lang-python=\"`style`\" pulumi-lang-yaml=\"`style`\" pulumi-lang-java=\"`style`\"\u003e`style`\u003c/span\u003e block is allowed using the structure below.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQuery:DashboardWidgetTimeseriesDefinitionRequestAuditQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery:DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy:DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute:DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery:DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy:DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery:DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery:DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute:DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormula:DashboardWidgetTimeseriesDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormat:DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaLimit:DashboardWidgetTimeseriesDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormat:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaStyle:DashboardWidgetTimeseriesDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormat:DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaLimit:DashboardWidgetTimeseriesDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormat:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestFormulaStyle:DashboardWidgetTimeseriesDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestMetadata:DashboardWidgetTimeseriesDefinitionRequestMetadata": {
            "properties": {
                "aliasName": {
                    "type": "string",
                    "description": "The expression alias.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression name.\n"
                }
            },
            "type": "object",
            "required": [
                "expression"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQuery:DashboardWidgetTimeseriesDefinitionRequestNetworkQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery:DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy:DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute:DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery:DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy:DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery:DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery:DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute:DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestProcessQuery:DashboardWidgetTimeseriesDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQuery:DashboardWidgetTimeseriesDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryCloudCostQuery:DashboardWidgetTimeseriesDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery:DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery:DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery:DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQuerySloQuery:DashboardWidgetTimeseriesDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryCloudCostQuery:DashboardWidgetTimeseriesDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery:DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch:DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch:DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery:DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery:DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestQuerySloQuery:DashboardWidgetTimeseriesDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRequestStyle:DashboardWidgetTimeseriesDefinitionRequestStyle": {
            "properties": {
                "hasValueLabels": {
                    "type": "boolean",
                    "description": "If true, the value is displayed as a label relative to the data point.\n"
                },
                "lineType": {
                    "type": "string",
                    "description": "The type of lines displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`dashed`\" pulumi-lang-dotnet=\"`Dashed`\" pulumi-lang-go=\"`dashed`\" pulumi-lang-python=\"`dashed`\" pulumi-lang-yaml=\"`dashed`\" pulumi-lang-java=\"`dashed`\"\u003e`dashed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dotted`\" pulumi-lang-dotnet=\"`Dotted`\" pulumi-lang-go=\"`dotted`\" pulumi-lang-python=\"`dotted`\" pulumi-lang-yaml=\"`dotted`\" pulumi-lang-java=\"`dotted`\"\u003e`dotted`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`solid`\" pulumi-lang-dotnet=\"`Solid`\" pulumi-lang-go=\"`solid`\" pulumi-lang-python=\"`solid`\" pulumi-lang-yaml=\"`solid`\" pulumi-lang-java=\"`solid`\"\u003e`solid`\u003c/span\u003e.\n"
                },
                "lineWidth": {
                    "type": "string",
                    "description": "The width of line displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`normal`\" pulumi-lang-dotnet=\"`Normal`\" pulumi-lang-go=\"`normal`\" pulumi-lang-python=\"`normal`\" pulumi-lang-yaml=\"`normal`\" pulumi-lang-java=\"`normal`\"\u003e`normal`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thick`\" pulumi-lang-dotnet=\"`Thick`\" pulumi-lang-go=\"`thick`\" pulumi-lang-python=\"`thick`\" pulumi-lang-yaml=\"`thick`\" pulumi-lang-java=\"`thick`\"\u003e`thick`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thin`\" pulumi-lang-dotnet=\"`Thin`\" pulumi-lang-go=\"`thin`\" pulumi-lang-python=\"`thin`\" pulumi-lang-yaml=\"`thin`\" pulumi-lang-java=\"`thin`\"\u003e`thin`\u003c/span\u003e.\n"
                },
                "orderBy": {
                    "type": "string",
                    "description": "How to order series in timeseries visualizations. Valid values are \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`values`\" pulumi-lang-dotnet=\"`Values`\" pulumi-lang-go=\"`values`\" pulumi-lang-python=\"`values`\" pulumi-lang-yaml=\"`values`\" pulumi-lang-java=\"`values`\"\u003e`values`\u003c/span\u003e.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionRightYaxis:DashboardWidgetTimeseriesDefinitionRightYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTimeseriesDefinitionYaxis:DashboardWidgetTimeseriesDefinitionYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinition:DashboardWidgetToplistDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionCustomLink:DashboardWidgetToplistDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequest:DashboardWidgetToplistDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "styles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionStyle:DashboardWidgetToplistDefinitionStyle"
                    },
                    "description": "The style of the widget\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetToplistDefinitionCustomLink:DashboardWidgetToplistDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequest:DashboardWidgetToplistDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetApmQuery:DashboardWidgetApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "auditQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestAuditQuery:DashboardWidgetToplistDefinitionRequestAuditQuery",
                    "description": "The query to use for this widget.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestConditionalFormat:DashboardWidgetToplistDefinitionRequestConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormula:DashboardWidgetToplistDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetLogQuery:DashboardWidgetLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestProcessQuery:DashboardWidgetToplistDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQuery:DashboardWidgetToplistDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetRumQuery:DashboardWidgetRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetSecurityQuery:DashboardWidgetSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestStyle:DashboardWidgetToplistDefinitionRequestStyle",
                    "description": "Define request for the widget's style.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestAuditQuery:DashboardWidgetToplistDefinitionRequestAuditQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestAuditQueryComputeQuery:DashboardWidgetToplistDefinitionRequestAuditQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestAuditQueryGroupBy:DashboardWidgetToplistDefinitionRequestAuditQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestAuditQueryMultiCompute:DashboardWidgetToplistDefinitionRequestAuditQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestAuditQueryComputeQuery:DashboardWidgetToplistDefinitionRequestAuditQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestAuditQueryGroupBy:DashboardWidgetToplistDefinitionRequestAuditQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery:DashboardWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery:DashboardWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestAuditQueryMultiCompute:DashboardWidgetToplistDefinitionRequestAuditQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestConditionalFormat:DashboardWidgetToplistDefinitionRequestConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormula:DashboardWidgetToplistDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormulaConditionalFormat:DashboardWidgetToplistDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormulaLimit:DashboardWidgetToplistDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormat:DashboardWidgetToplistDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormulaStyle:DashboardWidgetToplistDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormulaConditionalFormat:DashboardWidgetToplistDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormulaLimit:DashboardWidgetToplistDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormat:DashboardWidgetToplistDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetToplistDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestFormulaStyle:DashboardWidgetToplistDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestProcessQuery:DashboardWidgetToplistDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQuery:DashboardWidgetToplistDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetToplistDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryCloudCostQuery:DashboardWidgetToplistDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQuery:DashboardWidgetToplistDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryMetricQuery:DashboardWidgetToplistDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryProcessQuery:DashboardWidgetToplistDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQuerySloQuery:DashboardWidgetToplistDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetToplistDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryCloudCostQuery:DashboardWidgetToplistDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQuery:DashboardWidgetToplistDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryCompute:DashboardWidgetToplistDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQuerySearch:DashboardWidgetToplistDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryCompute:DashboardWidgetToplistDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryEventQuerySearch:DashboardWidgetToplistDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryMetricQuery:DashboardWidgetToplistDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQueryProcessQuery:DashboardWidgetToplistDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestQuerySloQuery:DashboardWidgetToplistDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetToplistDefinitionRequestStyle:DashboardWidgetToplistDefinitionRequestStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetToplistDefinitionStyle:DashboardWidgetToplistDefinitionStyle": {
            "properties": {
                "displays": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetToplistDefinitionStyleDisplay:DashboardWidgetToplistDefinitionStyleDisplay"
                    },
                    "description": "The display mode for the widget.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette for the widget.\n"
                },
                "scaling": {
                    "type": "string",
                    "description": "The scaling mode for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`absolute`\" pulumi-lang-dotnet=\"`Absolute`\" pulumi-lang-go=\"`absolute`\" pulumi-lang-python=\"`absolute`\" pulumi-lang-yaml=\"`absolute`\" pulumi-lang-java=\"`absolute`\"\u003e`absolute`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`relative`\" pulumi-lang-dotnet=\"`Relative`\" pulumi-lang-go=\"`relative`\" pulumi-lang-python=\"`relative`\" pulumi-lang-yaml=\"`relative`\" pulumi-lang-java=\"`relative`\"\u003e`relative`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "scaling"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetToplistDefinitionStyleDisplay:DashboardWidgetToplistDefinitionStyleDisplay": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "The display type for the widget.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/DashboardWidgetTopologyMapDefinition:DashboardWidgetTopologyMapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTopologyMapDefinitionCustomLink:DashboardWidgetTopologyMapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTopologyMapDefinitionRequest:DashboardWidgetTopologyMapDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (\u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`requestType`\" pulumi-lang-dotnet=\"`RequestType`\" pulumi-lang-go=\"`requestType`\" pulumi-lang-python=\"`request_type`\" pulumi-lang-yaml=\"`requestType`\" pulumi-lang-java=\"`requestType`\"\u003e`requestType`\u003c/span\u003e are required within the request).\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTopologyMapDefinitionCustomLink:DashboardWidgetTopologyMapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTopologyMapDefinitionRequest:DashboardWidgetTopologyMapDefinitionRequest": {
            "properties": {
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTopologyMapDefinitionRequestQuery:DashboardWidgetTopologyMapDefinitionRequestQuery"
                    },
                    "description": "The query for a Topology request.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "The request type for the Topology request ('topology'). Valid values are \u003cspan pulumi-lang-nodejs=\"`topology`\" pulumi-lang-dotnet=\"`Topology`\" pulumi-lang-go=\"`topology`\" pulumi-lang-python=\"`topology`\" pulumi-lang-yaml=\"`topology`\" pulumi-lang-java=\"`topology`\"\u003e`topology`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "queries",
                "requestType"
            ]
        },
        "datadog:index/DashboardWidgetTopologyMapDefinitionRequestQuery:DashboardWidgetTopologyMapDefinitionRequestQuery": {
            "properties": {
                "dataSource": {
                    "type": "string",
                    "description": "The data source for the Topology request ('service*map' or 'data*streams'). Valid values are \u003cspan pulumi-lang-nodejs=\"`dataStreams`\" pulumi-lang-dotnet=\"`DataStreams`\" pulumi-lang-go=\"`dataStreams`\" pulumi-lang-python=\"`data_streams`\" pulumi-lang-yaml=\"`dataStreams`\" pulumi-lang-java=\"`dataStreams`\"\u003e`dataStreams`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`serviceMap`\" pulumi-lang-dotnet=\"`ServiceMap`\" pulumi-lang-go=\"`serviceMap`\" pulumi-lang-python=\"`service_map`\" pulumi-lang-yaml=\"`serviceMap`\" pulumi-lang-java=\"`serviceMap`\"\u003e`serviceMap`\u003c/span\u003e.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Your environment and primary tag (or `*` if enabled for your account).\n"
                },
                "service": {
                    "type": "string",
                    "description": "The ID of the service to map.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "filters",
                "service"
            ]
        },
        "datadog:index/DashboardWidgetTraceServiceDefinition:DashboardWidgetTraceServiceDefinition": {
            "properties": {
                "displayFormat": {
                    "type": "string",
                    "description": "The number of columns to display. Valid values are \u003cspan pulumi-lang-nodejs=\"`oneColumn`\" pulumi-lang-dotnet=\"`OneColumn`\" pulumi-lang-go=\"`oneColumn`\" pulumi-lang-python=\"`one_column`\" pulumi-lang-yaml=\"`oneColumn`\" pulumi-lang-java=\"`oneColumn`\"\u003e`oneColumn`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`twoColumn`\" pulumi-lang-dotnet=\"`TwoColumn`\" pulumi-lang-go=\"`twoColumn`\" pulumi-lang-python=\"`two_column`\" pulumi-lang-yaml=\"`twoColumn`\" pulumi-lang-java=\"`twoColumn`\"\u003e`twoColumn`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`threeColumn`\" pulumi-lang-dotnet=\"`ThreeColumn`\" pulumi-lang-go=\"`threeColumn`\" pulumi-lang-python=\"`three_column`\" pulumi-lang-yaml=\"`threeColumn`\" pulumi-lang-java=\"`threeColumn`\"\u003e`threeColumn`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "showBreakdown": {
                    "type": "boolean",
                    "description": "Whether to show the latency breakdown or not.\n"
                },
                "showDistribution": {
                    "type": "boolean",
                    "description": "Whether to show the latency distribution or not.\n"
                },
                "showErrors": {
                    "type": "boolean",
                    "description": "Whether to show the error metrics or not.\n"
                },
                "showHits": {
                    "type": "boolean",
                    "description": "Whether to show the hits metrics or not\n"
                },
                "showLatency": {
                    "type": "boolean",
                    "description": "Whether to show the latency metrics or not.\n"
                },
                "showResourceList": {
                    "type": "boolean",
                    "description": "Whether to show the resource list or not.\n"
                },
                "sizeFormat": {
                    "type": "string",
                    "description": "The size of the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`small`\" pulumi-lang-dotnet=\"`Small`\" pulumi-lang-go=\"`small`\" pulumi-lang-python=\"`small`\" pulumi-lang-yaml=\"`small`\" pulumi-lang-java=\"`small`\"\u003e`small`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`large`\" pulumi-lang-dotnet=\"`Large`\" pulumi-lang-go=\"`large`\" pulumi-lang-python=\"`large`\" pulumi-lang-yaml=\"`large`\" pulumi-lang-java=\"`large`\"\u003e`large`\u003c/span\u003e.\n"
                },
                "spanName": {
                    "type": "string",
                    "description": "APM span name\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "env",
                "service",
                "spanName"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "env",
                        "hideIncompleteCostData",
                        "service",
                        "spanName"
                    ]
                }
            }
        },
        "datadog:index/DashboardWidgetTreemapDefinition:DashboardWidgetTreemapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionCustomLink:DashboardWidgetTreemapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequest:DashboardWidgetTreemapDefinitionRequest"
                    },
                    "description": "Nested block describing the request to use when displaying the widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTreemapDefinitionCustomLink:DashboardWidgetTreemapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequest:DashboardWidgetTreemapDefinitionRequest": {
            "properties": {
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormula:DashboardWidgetTreemapDefinitionRequestFormula"
                    }
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQuery:DashboardWidgetTreemapDefinitionRequestQuery"
                    }
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormula:DashboardWidgetTreemapDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaConditionalFormat:DashboardWidgetTreemapDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaLimit:DashboardWidgetTreemapDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormat:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaStyle:DashboardWidgetTreemapDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaConditionalFormat:DashboardWidgetTreemapDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaLimit:DashboardWidgetTreemapDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormat:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnit:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCanonical:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCustom:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitScale:DashboardWidgetTreemapDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestFormulaStyle:DashboardWidgetTreemapDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQuery:DashboardWidgetTreemapDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryCloudCostQuery:DashboardWidgetTreemapDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQuery:DashboardWidgetTreemapDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryMetricQuery:DashboardWidgetTreemapDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryProcessQuery:DashboardWidgetTreemapDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQuerySloQuery:DashboardWidgetTreemapDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery:DashboardWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery:DashboardWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryCloudCostQuery:DashboardWidgetTreemapDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQuery:DashboardWidgetTreemapDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryCompute:DashboardWidgetTreemapDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearch:DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryCompute:DashboardWidgetTreemapDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBy:DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByFields:DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByFieldsSort:DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort:DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearch:DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryMetricQuery:DashboardWidgetTreemapDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQueryProcessQuery:DashboardWidgetTreemapDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/DashboardWidgetTreemapDefinitionRequestQuerySloQuery:DashboardWidgetTreemapDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/DashboardWidgetWidgetLayout:DashboardWidgetWidgetLayout": {
            "properties": {
                "height": {
                    "type": "integer",
                    "description": "The height of the widget.\n"
                },
                "isColumnBreak": {
                    "type": "boolean",
                    "description": "Whether the widget should be the first one on the second column in high density or not. Only one widget in the dashboard should have this property set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the widget.\n"
                },
                "x": {
                    "type": "integer",
                    "description": "The position of the widget on the x (horizontal) axis. Must be greater than or equal to 0.\n"
                },
                "y": {
                    "type": "integer",
                    "description": "The position of the widget on the y (vertical) axis. Must be greater than or equal to 0.\n"
                }
            },
            "type": "object",
            "required": [
                "height",
                "width",
                "x",
                "y"
            ]
        },
        "datadog:index/DatasetProductFilter:DatasetProductFilter": {
            "properties": {
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag-based filters used to restrict access to the product type. Each filter is formatted as `@tag.key:value`.\n"
                },
                "product": {
                    "type": "string",
                    "description": "The product type of the dataset. Supported types: \u003cspan pulumi-lang-nodejs=\"`apm`\" pulumi-lang-dotnet=\"`Apm`\" pulumi-lang-go=\"`apm`\" pulumi-lang-python=\"`apm`\" pulumi-lang-yaml=\"`apm`\" pulumi-lang-java=\"`apm`\"\u003e`apm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`synthetics`\" pulumi-lang-dotnet=\"`Synthetics`\" pulumi-lang-go=\"`synthetics`\" pulumi-lang-python=\"`synthetics`\" pulumi-lang-yaml=\"`synthetics`\" pulumi-lang-java=\"`synthetics`\"\u003e`synthetics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`metrics`\" pulumi-lang-dotnet=\"`Metrics`\" pulumi-lang-go=\"`metrics`\" pulumi-lang-python=\"`metrics`\" pulumi-lang-yaml=\"`metrics`\" pulumi-lang-java=\"`metrics`\"\u003e`metrics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sdRepoinfo`\" pulumi-lang-dotnet=\"`SdRepoinfo`\" pulumi-lang-go=\"`sdRepoinfo`\" pulumi-lang-python=\"`sd_repoinfo`\" pulumi-lang-yaml=\"`sdRepoinfo`\" pulumi-lang-java=\"`sdRepoinfo`\"\u003e`sdRepoinfo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorTracking`\" pulumi-lang-dotnet=\"`ErrorTracking`\" pulumi-lang-go=\"`errorTracking`\" pulumi-lang-python=\"`error_tracking`\" pulumi-lang-yaml=\"`errorTracking`\" pulumi-lang-java=\"`errorTracking`\"\u003e`errorTracking`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`mlObs`\" pulumi-lang-dotnet=\"`MlObs`\" pulumi-lang-go=\"`mlObs`\" pulumi-lang-python=\"`ml_obs`\" pulumi-lang-yaml=\"`mlObs`\" pulumi-lang-java=\"`mlObs`\"\u003e`mlObs`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "filters",
                "product"
            ]
        },
        "datadog:index/DeploymentGateRule:DeploymentGateRule": {
            "properties": {
                "dryRun": {
                    "type": "boolean",
                    "description": "Whether the rule is in dry run mode.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The rule ID.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The rule name. Must be unique within the deployment gate.\n"
                },
                "options": {
                    "$ref": "#/types/datadog:index/DeploymentGateRuleOptions:DeploymentGateRuleOptions",
                    "description": "Options for the deployment rule.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The rule type (e.g., 'faulty*deployment*detection', 'monitor').\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "dryRun",
                        "id",
                        "name",
                        "type"
                    ]
                }
            }
        },
        "datadog:index/DeploymentGateRuleOptions:DeploymentGateRuleOptions": {
            "properties": {
                "duration": {
                    "type": "integer",
                    "description": "The duration for the rule.\n"
                },
                "excludedResources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Resources to exclude from faulty deployment detection.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query for monitor rules.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DowntimeRecurrence:DowntimeRecurrence": {
            "properties": {
                "period": {
                    "type": "integer",
                    "description": "How often to repeat as an integer. For example to repeat every 3 days, select a \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e of \u003cspan pulumi-lang-nodejs=\"`days`\" pulumi-lang-dotnet=\"`Days`\" pulumi-lang-go=\"`days`\" pulumi-lang-python=\"`days`\" pulumi-lang-yaml=\"`days`\" pulumi-lang-java=\"`days`\"\u003e`days`\u003c/span\u003e and a \u003cspan pulumi-lang-nodejs=\"`period`\" pulumi-lang-dotnet=\"`Period`\" pulumi-lang-go=\"`period`\" pulumi-lang-python=\"`period`\" pulumi-lang-yaml=\"`period`\" pulumi-lang-java=\"`period`\"\u003e`period`\u003c/span\u003e of \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e.\n"
                },
                "rrule": {
                    "type": "string",
                    "description": "The RRULE standard for defining recurring events. For example, to have a recurring event on the first day of each month, use `FREQ=MONTHLY;INTERVAL=1`. Most common rrule options from the iCalendar Spec are supported. Attributes specifying the duration in RRULE are not supported (for example, `DTSTART`, `DTEND`, `DURATION`). Only applicable when \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "One of \u003cspan pulumi-lang-nodejs=\"`days`\" pulumi-lang-dotnet=\"`Days`\" pulumi-lang-go=\"`days`\" pulumi-lang-python=\"`days`\" pulumi-lang-yaml=\"`days`\" pulumi-lang-java=\"`days`\"\u003e`days`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weeks`\" pulumi-lang-dotnet=\"`Weeks`\" pulumi-lang-go=\"`weeks`\" pulumi-lang-python=\"`weeks`\" pulumi-lang-yaml=\"`weeks`\" pulumi-lang-java=\"`weeks`\"\u003e`weeks`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`months`\" pulumi-lang-dotnet=\"`Months`\" pulumi-lang-go=\"`months`\" pulumi-lang-python=\"`months`\" pulumi-lang-yaml=\"`months`\" pulumi-lang-java=\"`months`\"\u003e`months`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`years`\" pulumi-lang-dotnet=\"`Years`\" pulumi-lang-go=\"`years`\" pulumi-lang-python=\"`years`\" pulumi-lang-yaml=\"`years`\" pulumi-lang-java=\"`years`\"\u003e`years`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e.\n"
                },
                "untilDate": {
                    "type": "integer",
                    "description": "The date at which the recurrence should end as a POSIX timestamp. \u003cspan pulumi-lang-nodejs=\"`untilOccurrences`\" pulumi-lang-dotnet=\"`UntilOccurrences`\" pulumi-lang-go=\"`untilOccurrences`\" pulumi-lang-python=\"`until_occurrences`\" pulumi-lang-yaml=\"`untilOccurrences`\" pulumi-lang-java=\"`untilOccurrences`\"\u003e`untilOccurrences`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`untilDate`\" pulumi-lang-dotnet=\"`UntilDate`\" pulumi-lang-go=\"`untilDate`\" pulumi-lang-python=\"`until_date`\" pulumi-lang-yaml=\"`untilDate`\" pulumi-lang-java=\"`untilDate`\"\u003e`untilDate`\u003c/span\u003e are mutually exclusive.\n"
                },
                "untilOccurrences": {
                    "type": "integer",
                    "description": "How many times the downtime will be rescheduled. \u003cspan pulumi-lang-nodejs=\"`untilOccurrences`\" pulumi-lang-dotnet=\"`UntilOccurrences`\" pulumi-lang-go=\"`untilOccurrences`\" pulumi-lang-python=\"`until_occurrences`\" pulumi-lang-yaml=\"`untilOccurrences`\" pulumi-lang-java=\"`untilOccurrences`\"\u003e`untilOccurrences`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`untilDate`\" pulumi-lang-dotnet=\"`UntilDate`\" pulumi-lang-go=\"`untilDate`\" pulumi-lang-python=\"`until_date`\" pulumi-lang-yaml=\"`untilDate`\" pulumi-lang-java=\"`untilDate`\"\u003e`untilDate`\u003c/span\u003e are mutually exclusive.\n"
                },
                "weekDays": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of week days to repeat on. Choose from: `Mon`, `Tue`, `Wed`, `Thu`, `Fri`, `Sat` or `Sun`. Only applicable when \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`weeks`\" pulumi-lang-dotnet=\"`Weeks`\" pulumi-lang-go=\"`weeks`\" pulumi-lang-python=\"`weeks`\" pulumi-lang-yaml=\"`weeks`\" pulumi-lang-java=\"`weeks`\"\u003e`weeks`\u003c/span\u003e. First letter must be capitalized.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/DowntimeScheduleMonitorIdentifier:DowntimeScheduleMonitorIdentifier": {
            "properties": {
                "monitorId": {
                    "type": "integer",
                    "description": "ID of the monitor to prevent notifications.\n"
                },
                "monitorTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of monitor tags. For example, tags that are applied directly to monitors, not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. The resulting downtime applies to monitors that match **all** provided monitor tags. Setting \u003cspan pulumi-lang-nodejs=\"`monitorTags`\" pulumi-lang-dotnet=\"`MonitorTags`\" pulumi-lang-go=\"`monitorTags`\" pulumi-lang-python=\"`monitor_tags`\" pulumi-lang-yaml=\"`monitorTags`\" pulumi-lang-java=\"`monitorTags`\"\u003e`monitorTags`\u003c/span\u003e to `[*]` configures the downtime to mute all monitors for the given scope.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/DowntimeScheduleOneTimeSchedule:DowntimeScheduleOneTimeSchedule": {
            "properties": {
                "end": {
                    "type": "string",
                    "description": "ISO-8601 Datetime to end the downtime. Must include a UTC offset of zero. If not provided, the downtime never ends.\n"
                },
                "start": {
                    "type": "string",
                    "description": "ISO-8601 Datetime to start the downtime. Must include a UTC offset of zero. If not provided, the downtime starts the moment it is created.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "start"
                    ]
                }
            }
        },
        "datadog:index/DowntimeScheduleRecurringSchedule:DowntimeScheduleRecurringSchedule": {
            "properties": {
                "recurrences": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DowntimeScheduleRecurringScheduleRecurrence:DowntimeScheduleRecurringScheduleRecurrence"
                    }
                },
                "timezone": {
                    "type": "string",
                    "description": "The timezone in which to schedule the downtime.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "timezone"
                    ]
                }
            }
        },
        "datadog:index/DowntimeScheduleRecurringScheduleRecurrence:DowntimeScheduleRecurringScheduleRecurrence": {
            "properties": {
                "duration": {
                    "type": "string",
                    "description": "The length of the downtime. Must begin with an integer and end with one of 'm', 'h', d', or 'w'.\n"
                },
                "rrule": {
                    "type": "string",
                    "description": "The `RRULE` standard for defining recurring events. For example, to have a recurring event on the first day of each month, set the type to \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` to \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e. Most common \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e options from the [iCalendar Spec](https://tools.ietf.org/html/rfc5545) are supported.  **Note**: Attributes specifying the duration in `RRULE` are not supported (for example, `DTSTART`, `DTEND`, `DURATION`). More examples available in this [downtime guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api).\n"
                },
                "start": {
                    "type": "string",
                    "description": "ISO-8601 Datetime to start the downtime. Must not include a UTC offset. If not provided, the downtime starts the moment it is created.\n"
                }
            },
            "type": "object",
            "required": [
                "duration",
                "rrule"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "duration",
                        "rrule",
                        "start"
                    ]
                }
            }
        },
        "datadog:index/IncidentNotificationRuleCondition:IncidentNotificationRuleCondition": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "The incident field to evaluate. Common values include: state, severity, services, teams. Custom fields are also supported.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The value(s) to compare against. Multiple values are ORed together.\n"
                }
            },
            "type": "object",
            "required": [
                "field",
                "values"
            ]
        },
        "datadog:index/IpAllowlistEntry:IpAllowlistEntry": {
            "properties": {
                "cidrBlock": {
                    "type": "string",
                    "description": "IP address or range of addresses. String must be a valid CIDR block or IP address.\n"
                },
                "note": {
                    "type": "string",
                    "description": "Note accompanying IP address.\n"
                }
            },
            "type": "object",
            "required": [
                "cidrBlock"
            ]
        },
        "datadog:index/LogsArchiveAzureArchive:LogsArchiveAzureArchive": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "Your client id.\n"
                },
                "container": {
                    "type": "string",
                    "description": "The container where the archive is stored.\n"
                },
                "path": {
                    "type": "string",
                    "description": "The path where the archive is stored.\n"
                },
                "storageAccount": {
                    "type": "string",
                    "description": "The associated storage account.\n"
                },
                "tenantId": {
                    "type": "string",
                    "description": "Your tenant id.\n"
                }
            },
            "type": "object",
            "required": [
                "clientId",
                "container",
                "storageAccount",
                "tenantId"
            ]
        },
        "datadog:index/LogsArchiveGcsArchive:LogsArchiveGcsArchive": {
            "properties": {
                "bucket": {
                    "type": "string",
                    "description": "Name of your GCS bucket.\n"
                },
                "clientEmail": {
                    "type": "string",
                    "description": "Your client email.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Path where the archive is stored.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Your project id.\n"
                }
            },
            "type": "object",
            "required": [
                "bucket",
                "clientEmail"
            ]
        },
        "datadog:index/LogsArchiveS3Archive:LogsArchiveS3Archive": {
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Your AWS account id.\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "Name of your s3 bucket.\n"
                },
                "encryptionKey": {
                    "type": "string",
                    "description": "The AWS KMS encryption key.\n"
                },
                "encryptionType": {
                    "type": "string",
                    "description": "The type of encryption on your archive. Valid values are `NO_OVERRIDE`, `SSE_S3`, `SSE_KMS`. Defaults to `\"NO_OVERRIDE\"`.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Path where the archive is stored.\n"
                },
                "roleName": {
                    "type": "string",
                    "description": "Your AWS role name\n"
                },
                "storageClass": {
                    "type": "string",
                    "description": "The AWS S3 storage class used to upload the logs. Valid values are `STANDARD`, `STANDARD_IA`, `ONEZONE_IA`, `INTELLIGENT_TIERING`, `GLACIER_IR`. Defaults to `\"STANDARD\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "accountId",
                "bucket",
                "roleName"
            ]
        },
        "datadog:index/LogsCustomDestinationElasticsearchDestination:LogsCustomDestinationElasticsearchDestination": {
            "properties": {
                "basicAuth": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationElasticsearchDestinationBasicAuth:LogsCustomDestinationElasticsearchDestinationBasicAuth",
                    "description": "Basic access authentication.\n"
                },
                "endpoint": {
                    "type": "string",
                    "description": "The destination for which logs will be forwarded to. Must have HTTPS scheme. Forwarding back to Datadog is not allowed.\n"
                },
                "indexName": {
                    "type": "string",
                    "description": "Name of the Elasticsearch index (must follow [Elasticsearch's criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)).\n"
                },
                "indexRotation": {
                    "type": "string",
                    "description": "Date pattern with US locale and UTC timezone to be appended to the index name after adding '-'\n\t\t\t\t\t\t(that is, '${index_name}-${indexPattern}').\n\t\t\t\t\t\tYou can customize the index rotation naming pattern by choosing one of these options:\n\t\t\t\t\t\t- Hourly: 'yyyy-MM-dd-HH' (as an example, it would render: '2022-10-19-09')\n\t\t\t\t\t\t- Daily: 'yyyy-MM-dd' (as an example, it would render: '2022-10-19')\n\t\t\t\t\t\t- Weekly: 'yyyy-'W'ww' (as an example, it would render: '2022-W42')\n\t\t\t\t\t\t- Monthly: 'yyyy-MM' (as an example, it would render: '2022-10')\n\t\t\t\t\t\tIf this field is missing or is blank, it means that the index name will always be the same\n\t\t\t\t\t\t(that is, no rotation).\n"
                }
            },
            "type": "object",
            "required": [
                "endpoint",
                "indexName"
            ]
        },
        "datadog:index/LogsCustomDestinationElasticsearchDestinationBasicAuth:LogsCustomDestinationElasticsearchDestinationBasicAuth": {
            "properties": {
                "password": {
                    "type": "string",
                    "description": "The password of the authentication. This field is not returned by the API.\n",
                    "secret": true
                },
                "username": {
                    "type": "string",
                    "description": "The username of the authentication. This field is not returned by the API.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "password",
                "username"
            ]
        },
        "datadog:index/LogsCustomDestinationHttpDestination:LogsCustomDestinationHttpDestination": {
            "properties": {
                "basicAuth": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationHttpDestinationBasicAuth:LogsCustomDestinationHttpDestinationBasicAuth",
                    "description": "Basic access authentication.\n"
                },
                "customHeaderAuth": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationHttpDestinationCustomHeaderAuth:LogsCustomDestinationHttpDestinationCustomHeaderAuth",
                    "description": "Custom header access authentication.\n"
                },
                "endpoint": {
                    "type": "string",
                    "description": "The destination for which logs will be forwarded to. Must have HTTPS scheme. Forwarding back to Datadog is not allowed.\n"
                }
            },
            "type": "object",
            "required": [
                "endpoint"
            ]
        },
        "datadog:index/LogsCustomDestinationHttpDestinationBasicAuth:LogsCustomDestinationHttpDestinationBasicAuth": {
            "properties": {
                "password": {
                    "type": "string",
                    "description": "The password of the authentication. This field is not returned by the API.\n",
                    "secret": true
                },
                "username": {
                    "type": "string",
                    "description": "The username of the authentication. This field is not returned by the API.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "password",
                "username"
            ]
        },
        "datadog:index/LogsCustomDestinationHttpDestinationCustomHeaderAuth:LogsCustomDestinationHttpDestinationCustomHeaderAuth": {
            "properties": {
                "headerName": {
                    "type": "string",
                    "description": "The header name of the authentication.\n"
                },
                "headerValue": {
                    "type": "string",
                    "description": "The header value of the authentication. This field is not returned by the API.\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "headerName",
                "headerValue"
            ]
        },
        "datadog:index/LogsCustomDestinationMicrosoftSentinelDestination:LogsCustomDestinationMicrosoftSentinelDestination": {
            "properties": {
                "clientId": {
                    "type": "string",
                    "description": "Client ID from the Datadog Azure Integration.\n"
                },
                "dataCollectionEndpoint": {
                    "type": "string",
                    "description": "Azure Data Collection Endpoint.\n"
                },
                "dataCollectionRuleId": {
                    "type": "string",
                    "description": "Azure Data Collection Rule ID.\n"
                },
                "streamName": {
                    "type": "string",
                    "description": "Azure stream name.\n"
                },
                "tenantId": {
                    "type": "string",
                    "description": "Tenant ID from the Datadog Azure Integration.\n"
                }
            },
            "type": "object",
            "required": [
                "clientId",
                "dataCollectionEndpoint",
                "dataCollectionRuleId",
                "streamName",
                "tenantId"
            ]
        },
        "datadog:index/LogsCustomDestinationSplunkDestination:LogsCustomDestinationSplunkDestination": {
            "properties": {
                "accessToken": {
                    "type": "string",
                    "description": "Access token of the Splunk HTTP Event Collector. This field is not returned by the API.\n",
                    "secret": true
                },
                "endpoint": {
                    "type": "string",
                    "description": "The destination for which logs will be forwarded to. Must have HTTPS scheme. Forwarding back to Datadog is not allowed.\n"
                }
            },
            "type": "object",
            "required": [
                "accessToken",
                "endpoint"
            ]
        },
        "datadog:index/LogsCustomPipelineFilter:LogsCustomPipelineFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Filter criteria of the category.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessor:LogsCustomPipelineProcessor": {
            "properties": {
                "arithmeticProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorArithmeticProcessor:LogsCustomPipelineProcessorArithmeticProcessor",
                    "description": "Arithmetic Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#arithmetic-processor)\n"
                },
                "arrayProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorArrayProcessor:LogsCustomPipelineProcessorArrayProcessor",
                    "description": "Array Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#array-processor)\n"
                },
                "attributeRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorAttributeRemapper:LogsCustomPipelineProcessorAttributeRemapper",
                    "description": "Attribute Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#remapper)\n"
                },
                "categoryProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorCategoryProcessor:LogsCustomPipelineProcessorCategoryProcessor",
                    "description": "Category Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#category-processor)\n"
                },
                "dateRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorDateRemapper:LogsCustomPipelineProcessorDateRemapper",
                    "description": "Date Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#log-date-remapper)\n"
                },
                "decoderProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorDecoderProcessor:LogsCustomPipelineProcessorDecoderProcessor",
                    "description": "Decoder Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/log_configuration/processors/?tab=ui#decoder-processor)\n"
                },
                "geoIpParser": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorGeoIpParser:LogsCustomPipelineProcessorGeoIpParser",
                    "description": "Date GeoIP Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#geoip-parser)\n"
                },
                "grokParser": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorGrokParser:LogsCustomPipelineProcessorGrokParser",
                    "description": "Grok Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#grok-parser)\n"
                },
                "lookupProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorLookupProcessor:LogsCustomPipelineProcessorLookupProcessor",
                    "description": "Lookup Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#lookup-processor)\n"
                },
                "messageRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorMessageRemapper:LogsCustomPipelineProcessorMessageRemapper",
                    "description": "Message Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#log-message-remapper)\n"
                },
                "pipeline": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipeline:LogsCustomPipelineProcessorPipeline"
                },
                "referenceTableLookupProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorReferenceTableLookupProcessor:LogsCustomPipelineProcessorReferenceTableLookupProcessor",
                    "description": "Reference Table Lookup Processor. Reference Tables are in public beta. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#lookup-processor)\n"
                },
                "schemaProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessor:LogsCustomPipelineProcessorSchemaProcessor",
                    "description": "Schema Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#schema-processor)\n"
                },
                "serviceRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorServiceRemapper:LogsCustomPipelineProcessorServiceRemapper",
                    "description": "Service Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#service-remapper)\n"
                },
                "spanIdRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSpanIdRemapper:LogsCustomPipelineProcessorSpanIdRemapper",
                    "description": "Span ID Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/log_configuration/processors/?tab=ui#span-remapper)\n"
                },
                "statusRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorStatusRemapper:LogsCustomPipelineProcessorStatusRemapper",
                    "description": "Status Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#log-status-remapper)\n"
                },
                "stringBuilderProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorStringBuilderProcessor:LogsCustomPipelineProcessorStringBuilderProcessor",
                    "description": "String Builder Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#string-builder-processor)\n"
                },
                "traceIdRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorTraceIdRemapper:LogsCustomPipelineProcessorTraceIdRemapper",
                    "description": "Trace ID Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#trace-remapper)\n"
                },
                "urlParser": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorUrlParser:LogsCustomPipelineProcessorUrlParser",
                    "description": "URL Parser Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#url-parser)\n"
                },
                "userAgentParser": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorUserAgentParser:LogsCustomPipelineProcessorUserAgentParser",
                    "description": "User-Agent Parser Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#user-agent-parser)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorArithmeticProcessor:LogsCustomPipelineProcessorArithmeticProcessor": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "Arithmetic operation between one or more log attributes.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Boolean value to enable your pipeline.\n"
                },
                "isReplaceMissing": {
                    "type": "boolean",
                    "description": "If true, it replaces all missing attributes of expression by 0, false skips the operation if an attribute is missing.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Your pipeline name.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the attribute that contains the result of the arithmetic operation.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorArrayProcessor:LogsCustomPipelineProcessorArrayProcessor": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "Boolean value to enable your processor.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Your processor name.\n"
                },
                "operation": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorArrayProcessorOperation:LogsCustomPipelineProcessorArrayProcessorOperation",
                    "description": "Operation to perform on the array.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorArrayProcessorOperation:LogsCustomPipelineProcessorArrayProcessorOperation": {
            "properties": {
                "append": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorArrayProcessorOperationAppend:LogsCustomPipelineProcessorArrayProcessorOperationAppend",
                    "description": "Operation that appends a value to a target array attribute.\n"
                },
                "length": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorArrayProcessorOperationLength:LogsCustomPipelineProcessorArrayProcessorOperationLength",
                    "description": "Operation that computes the length of a source array and stores the result in a target attribute.\n"
                },
                "select": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorArrayProcessorOperationSelect:LogsCustomPipelineProcessorArrayProcessorOperationSelect",
                    "description": "Operation that finds an object in a source array using a filter, and then extracts a value from that found object and puts that value into the target attribute.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorArrayProcessorOperationAppend:LogsCustomPipelineProcessorArrayProcessorOperationAppend": {
            "properties": {
                "preserveSource": {
                    "type": "boolean",
                    "description": "Remove or preserve the remapped source element. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Attribute path containing the value to append.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Attribute path of the array to append to.\n"
                }
            },
            "type": "object",
            "required": [
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorArrayProcessorOperationLength:LogsCustomPipelineProcessorArrayProcessorOperationLength": {
            "properties": {
                "source": {
                    "type": "string",
                    "description": "Attribute path of the array to compute the length of.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Attribute that receives the computed length.\n"
                }
            },
            "type": "object",
            "required": [
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorArrayProcessorOperationSelect:LogsCustomPipelineProcessorArrayProcessorOperationSelect": {
            "properties": {
                "filter": {
                    "type": "string",
                    "description": "Filter expression (e.g. key1:value1 OR key2:value2) used to find the matching element.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Attribute path of the array to search into.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Attribute that receives the extracted value.\n"
                },
                "valueToExtract": {
                    "type": "string",
                    "description": "Attribute key from the matching object that should be extracted.\n"
                }
            },
            "type": "object",
            "required": [
                "filter",
                "source",
                "target",
                "valueToExtract"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorAttributeRemapper:LogsCustomPipelineProcessorAttributeRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "overrideOnConflict": {
                    "type": "boolean",
                    "description": "Override the target element if already set.\n"
                },
                "preserveSource": {
                    "type": "boolean",
                    "description": "Remove or preserve the remapped source element.\n"
                },
                "sourceType": {
                    "type": "string",
                    "description": "Defines where the sources are from (log \u003cspan pulumi-lang-nodejs=\"`attribute`\" pulumi-lang-dotnet=\"`Attribute`\" pulumi-lang-go=\"`attribute`\" pulumi-lang-python=\"`attribute`\" pulumi-lang-yaml=\"`attribute`\" pulumi-lang-java=\"`attribute`\"\u003e`attribute`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e).\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes or tags.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Final attribute or tag name to remap the sources.\n"
                },
                "targetFormat": {
                    "type": "string",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`targetType`\" pulumi-lang-dotnet=\"`TargetType`\" pulumi-lang-go=\"`targetType`\" pulumi-lang-python=\"`target_type`\" pulumi-lang-yaml=\"`targetType`\" pulumi-lang-java=\"`targetType`\"\u003e`targetType`\u003c/span\u003e of the remapper is \u003cspan pulumi-lang-nodejs=\"`attribute`\" pulumi-lang-dotnet=\"`Attribute`\" pulumi-lang-go=\"`attribute`\" pulumi-lang-python=\"`attribute`\" pulumi-lang-yaml=\"`attribute`\" pulumi-lang-java=\"`attribute`\"\u003e`attribute`\u003c/span\u003e, try to cast the value to a new specific type. If the cast is not possible, the original type is kept. \u003cspan pulumi-lang-nodejs=\"`string`\" pulumi-lang-dotnet=\"`String`\" pulumi-lang-go=\"`string`\" pulumi-lang-python=\"`string`\" pulumi-lang-yaml=\"`string`\" pulumi-lang-java=\"`string`\"\u003e`string`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`integer`\" pulumi-lang-dotnet=\"`Integer`\" pulumi-lang-go=\"`integer`\" pulumi-lang-python=\"`integer`\" pulumi-lang-yaml=\"`integer`\" pulumi-lang-java=\"`integer`\"\u003e`integer`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`double`\" pulumi-lang-dotnet=\"`Double`\" pulumi-lang-go=\"`double`\" pulumi-lang-python=\"`double`\" pulumi-lang-yaml=\"`double`\" pulumi-lang-java=\"`double`\"\u003e`double`\u003c/span\u003e are the possible types. If the \u003cspan pulumi-lang-nodejs=\"`targetType`\" pulumi-lang-dotnet=\"`TargetType`\" pulumi-lang-go=\"`targetType`\" pulumi-lang-python=\"`target_type`\" pulumi-lang-yaml=\"`targetType`\" pulumi-lang-java=\"`targetType`\"\u003e`targetType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e, this parameter may not be specified.\n"
                },
                "targetType": {
                    "type": "string",
                    "description": "Defines if the target is a log \u003cspan pulumi-lang-nodejs=\"`attribute`\" pulumi-lang-dotnet=\"`Attribute`\" pulumi-lang-go=\"`attribute`\" pulumi-lang-python=\"`attribute`\" pulumi-lang-yaml=\"`attribute`\" pulumi-lang-java=\"`attribute`\"\u003e`attribute`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "sourceType",
                "sources",
                "target",
                "targetType"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorCategoryProcessor:LogsCustomPipelineProcessorCategoryProcessor": {
            "properties": {
                "categories": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorCategoryProcessorCategory:LogsCustomPipelineProcessorCategoryProcessorCategory"
                    },
                    "description": "List of filters to match or exclude a log with their corresponding name to assign a custom value to the log.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the category\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the target attribute whose value is defined by the matching category.\n"
                }
            },
            "type": "object",
            "required": [
                "categories",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorCategoryProcessorCategory:LogsCustomPipelineProcessorCategoryProcessorCategory": {
            "properties": {
                "filter": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorCategoryProcessorCategoryFilter:LogsCustomPipelineProcessorCategoryProcessorCategoryFilter"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "filter",
                "name"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorCategoryProcessorCategoryFilter:LogsCustomPipelineProcessorCategoryProcessorCategoryFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Filter criteria of the category.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorDateRemapper:LogsCustomPipelineProcessorDateRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorDecoderProcessor:LogsCustomPipelineProcessorDecoderProcessor": {
            "properties": {
                "binaryToTextEncoding": {
                    "type": "string",
                    "description": "Encoding type: base64 or base16\n"
                },
                "inputRepresentation": {
                    "type": "string",
                    "description": "Input representation: utf-8 or integer\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Encoded message\n"
                },
                "target": {
                    "type": "string",
                    "description": "Decoded message\n"
                }
            },
            "type": "object",
            "required": [
                "binaryToTextEncoding",
                "inputRepresentation",
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorGeoIpParser:LogsCustomPipelineProcessorGeoIpParser": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the parent attribute that contains all the extracted details from the sources.\n"
                }
            },
            "type": "object",
            "required": [
                "sources",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorGrokParser:LogsCustomPipelineProcessorGrokParser": {
            "properties": {
                "grok": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorGrokParserGrok:LogsCustomPipelineProcessorGrokParserGrok"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "samples": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of sample logs for this parser. It can save up to 5 samples. Each sample takes up to 5000 characters.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Name of the log attribute to parse.\n"
                }
            },
            "type": "object",
            "required": [
                "grok",
                "source"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorGrokParserGrok:LogsCustomPipelineProcessorGrokParserGrok": {
            "properties": {
                "matchRules": {
                    "type": "string",
                    "description": "Match rules for your grok parser.\n"
                },
                "supportRules": {
                    "type": "string",
                    "description": "Support rules for your grok parser.\n"
                }
            },
            "type": "object",
            "required": [
                "matchRules",
                "supportRules"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorLookupProcessor:LogsCustomPipelineProcessorLookupProcessor": {
            "properties": {
                "defaultLookup": {
                    "type": "string",
                    "description": "Default lookup value to use if there is no entry in the lookup table for the value of the source attribute.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "lookupTables": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of entries of the lookup table using `key,value` format.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "source": {
                    "type": "string",
                    "description": "Name of the source attribute used to do the lookup.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the attribute that contains the result of the lookup.\n"
                }
            },
            "type": "object",
            "required": [
                "lookupTables",
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorMessageRemapper:LogsCustomPipelineProcessorMessageRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipeline:LogsCustomPipelineProcessorPipeline": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineFilter:LogsCustomPipelineProcessorPipelineFilter"
                    }
                },
                "isEnabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "processors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessor:LogsCustomPipelineProcessorPipelineProcessor"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "filters",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "filters",
                        "name",
                        "tags"
                    ]
                }
            }
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineFilter:LogsCustomPipelineProcessorPipelineFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Filter criteria of the category.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessor:LogsCustomPipelineProcessorPipelineProcessor": {
            "properties": {
                "arithmeticProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorArithmeticProcessor:LogsCustomPipelineProcessorPipelineProcessorArithmeticProcessor",
                    "description": "Arithmetic Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#arithmetic-processor)\n"
                },
                "arrayProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessor:LogsCustomPipelineProcessorPipelineProcessorArrayProcessor",
                    "description": "Array Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#array-processor)\n"
                },
                "attributeRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorAttributeRemapper:LogsCustomPipelineProcessorPipelineProcessorAttributeRemapper",
                    "description": "Attribute Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#remapper)\n"
                },
                "categoryProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorCategoryProcessor:LogsCustomPipelineProcessorPipelineProcessorCategoryProcessor",
                    "description": "Category Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#category-processor)\n"
                },
                "dateRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorDateRemapper:LogsCustomPipelineProcessorPipelineProcessorDateRemapper",
                    "description": "Date Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#log-date-remapper)\n"
                },
                "decoderProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorDecoderProcessor:LogsCustomPipelineProcessorPipelineProcessorDecoderProcessor",
                    "description": "Decoder Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/log_configuration/processors/?tab=ui#decoder-processor)\n"
                },
                "geoIpParser": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorGeoIpParser:LogsCustomPipelineProcessorPipelineProcessorGeoIpParser",
                    "description": "Date GeoIP Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#geoip-parser)\n"
                },
                "grokParser": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorGrokParser:LogsCustomPipelineProcessorPipelineProcessorGrokParser",
                    "description": "Grok Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#grok-parser)\n"
                },
                "lookupProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorLookupProcessor:LogsCustomPipelineProcessorPipelineProcessorLookupProcessor",
                    "description": "Lookup Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#lookup-processor)\n"
                },
                "messageRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorMessageRemapper:LogsCustomPipelineProcessorPipelineProcessorMessageRemapper",
                    "description": "Message Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#log-message-remapper)\n"
                },
                "referenceTableLookupProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorReferenceTableLookupProcessor:LogsCustomPipelineProcessorPipelineProcessorReferenceTableLookupProcessor",
                    "description": "Reference Table Lookup Processor. Reference Tables are in public beta. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#lookup-processor)\n"
                },
                "schemaProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessor:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessor",
                    "description": "Schema Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#schema-processor)\n"
                },
                "serviceRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorServiceRemapper:LogsCustomPipelineProcessorPipelineProcessorServiceRemapper",
                    "description": "Service Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#service-remapper)\n"
                },
                "spanIdRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSpanIdRemapper:LogsCustomPipelineProcessorPipelineProcessorSpanIdRemapper",
                    "description": "Span ID Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/log_configuration/processors/?tab=ui#span-remapper)\n"
                },
                "statusRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorStatusRemapper:LogsCustomPipelineProcessorPipelineProcessorStatusRemapper",
                    "description": "Status Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#log-status-remapper)\n"
                },
                "stringBuilderProcessor": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorStringBuilderProcessor:LogsCustomPipelineProcessorPipelineProcessorStringBuilderProcessor",
                    "description": "String Builder Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#string-builder-processor)\n"
                },
                "traceIdRemapper": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorTraceIdRemapper:LogsCustomPipelineProcessorPipelineProcessorTraceIdRemapper",
                    "description": "Trace ID Remapper Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#trace-remapper)\n"
                },
                "urlParser": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorUrlParser:LogsCustomPipelineProcessorPipelineProcessorUrlParser",
                    "description": "URL Parser Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#url-parser)\n"
                },
                "userAgentParser": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorUserAgentParser:LogsCustomPipelineProcessorPipelineProcessorUserAgentParser",
                    "description": "User-Agent Parser Processor. More information can be found in the [official docs](https://docs.datadoghq.com/logs/processing/processors/?tab=ui#user-agent-parser)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorArithmeticProcessor:LogsCustomPipelineProcessorPipelineProcessorArithmeticProcessor": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "Arithmetic operation between one or more log attributes.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Boolean value to enable your pipeline.\n"
                },
                "isReplaceMissing": {
                    "type": "boolean",
                    "description": "If true, it replaces all missing attributes of expression by 0, false skips the operation if an attribute is missing.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Your pipeline name.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the attribute that contains the result of the arithmetic operation.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessor:LogsCustomPipelineProcessorPipelineProcessorArrayProcessor": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "Boolean value to enable your processor.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Your processor name.\n"
                },
                "operation": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperation:LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperation",
                    "description": "Operation to perform on the array.\n"
                }
            },
            "type": "object",
            "required": [
                "operation"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperation:LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperation": {
            "properties": {
                "append": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationAppend:LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationAppend",
                    "description": "Operation that appends a value to a target array attribute.\n"
                },
                "length": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationLength:LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationLength",
                    "description": "Operation that computes the length of a source array and stores the result in a target attribute.\n"
                },
                "select": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationSelect:LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationSelect",
                    "description": "Operation that finds an object in a source array using a filter, and then extracts a value from that found object and puts that value into the target attribute.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationAppend:LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationAppend": {
            "properties": {
                "preserveSource": {
                    "type": "boolean",
                    "description": "Remove or preserve the remapped source element. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Attribute path containing the value to append.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Attribute path of the array to append to.\n"
                }
            },
            "type": "object",
            "required": [
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationLength:LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationLength": {
            "properties": {
                "source": {
                    "type": "string",
                    "description": "Attribute path of the array to compute the length of.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Attribute that receives the computed length.\n"
                }
            },
            "type": "object",
            "required": [
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationSelect:LogsCustomPipelineProcessorPipelineProcessorArrayProcessorOperationSelect": {
            "properties": {
                "filter": {
                    "type": "string",
                    "description": "Filter expression (e.g. key1:value1 OR key2:value2) used to find the matching element.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Attribute path of the array to search into.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Attribute that receives the extracted value.\n"
                },
                "valueToExtract": {
                    "type": "string",
                    "description": "Attribute key from the matching object that should be extracted.\n"
                }
            },
            "type": "object",
            "required": [
                "filter",
                "source",
                "target",
                "valueToExtract"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorAttributeRemapper:LogsCustomPipelineProcessorPipelineProcessorAttributeRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "overrideOnConflict": {
                    "type": "boolean",
                    "description": "Override the target element if already set.\n"
                },
                "preserveSource": {
                    "type": "boolean",
                    "description": "Remove or preserve the remapped source element.\n"
                },
                "sourceType": {
                    "type": "string",
                    "description": "Defines where the sources are from (log \u003cspan pulumi-lang-nodejs=\"`attribute`\" pulumi-lang-dotnet=\"`Attribute`\" pulumi-lang-go=\"`attribute`\" pulumi-lang-python=\"`attribute`\" pulumi-lang-yaml=\"`attribute`\" pulumi-lang-java=\"`attribute`\"\u003e`attribute`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e).\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes or tags.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Final attribute or tag name to remap the sources.\n"
                },
                "targetFormat": {
                    "type": "string",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`targetType`\" pulumi-lang-dotnet=\"`TargetType`\" pulumi-lang-go=\"`targetType`\" pulumi-lang-python=\"`target_type`\" pulumi-lang-yaml=\"`targetType`\" pulumi-lang-java=\"`targetType`\"\u003e`targetType`\u003c/span\u003e of the remapper is \u003cspan pulumi-lang-nodejs=\"`attribute`\" pulumi-lang-dotnet=\"`Attribute`\" pulumi-lang-go=\"`attribute`\" pulumi-lang-python=\"`attribute`\" pulumi-lang-yaml=\"`attribute`\" pulumi-lang-java=\"`attribute`\"\u003e`attribute`\u003c/span\u003e, try to cast the value to a new specific type. If the cast is not possible, the original type is kept. \u003cspan pulumi-lang-nodejs=\"`string`\" pulumi-lang-dotnet=\"`String`\" pulumi-lang-go=\"`string`\" pulumi-lang-python=\"`string`\" pulumi-lang-yaml=\"`string`\" pulumi-lang-java=\"`string`\"\u003e`string`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`integer`\" pulumi-lang-dotnet=\"`Integer`\" pulumi-lang-go=\"`integer`\" pulumi-lang-python=\"`integer`\" pulumi-lang-yaml=\"`integer`\" pulumi-lang-java=\"`integer`\"\u003e`integer`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`double`\" pulumi-lang-dotnet=\"`Double`\" pulumi-lang-go=\"`double`\" pulumi-lang-python=\"`double`\" pulumi-lang-yaml=\"`double`\" pulumi-lang-java=\"`double`\"\u003e`double`\u003c/span\u003e are the possible types. If the \u003cspan pulumi-lang-nodejs=\"`targetType`\" pulumi-lang-dotnet=\"`TargetType`\" pulumi-lang-go=\"`targetType`\" pulumi-lang-python=\"`target_type`\" pulumi-lang-yaml=\"`targetType`\" pulumi-lang-java=\"`targetType`\"\u003e`targetType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e, this parameter may not be specified.\n"
                },
                "targetType": {
                    "type": "string",
                    "description": "Defines if the target is a log \u003cspan pulumi-lang-nodejs=\"`attribute`\" pulumi-lang-dotnet=\"`Attribute`\" pulumi-lang-go=\"`attribute`\" pulumi-lang-python=\"`attribute`\" pulumi-lang-yaml=\"`attribute`\" pulumi-lang-java=\"`attribute`\"\u003e`attribute`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "sourceType",
                "sources",
                "target",
                "targetType"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorCategoryProcessor:LogsCustomPipelineProcessorPipelineProcessorCategoryProcessor": {
            "properties": {
                "categories": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorCategoryProcessorCategory:LogsCustomPipelineProcessorPipelineProcessorCategoryProcessorCategory"
                    },
                    "description": "List of filters to match or exclude a log with their corresponding name to assign a custom value to the log.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the category\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the target attribute whose value is defined by the matching category.\n"
                }
            },
            "type": "object",
            "required": [
                "categories",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorCategoryProcessorCategory:LogsCustomPipelineProcessorPipelineProcessorCategoryProcessorCategory": {
            "properties": {
                "filter": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorCategoryProcessorCategoryFilter:LogsCustomPipelineProcessorPipelineProcessorCategoryProcessorCategoryFilter"
                },
                "name": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "filter",
                "name"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorCategoryProcessorCategoryFilter:LogsCustomPipelineProcessorPipelineProcessorCategoryProcessorCategoryFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Filter criteria of the category.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorDateRemapper:LogsCustomPipelineProcessorPipelineProcessorDateRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorDecoderProcessor:LogsCustomPipelineProcessorPipelineProcessorDecoderProcessor": {
            "properties": {
                "binaryToTextEncoding": {
                    "type": "string",
                    "description": "Encoding type: base64 or base16\n"
                },
                "inputRepresentation": {
                    "type": "string",
                    "description": "Input representation: utf-8 or integer\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Encoded message\n"
                },
                "target": {
                    "type": "string",
                    "description": "Decoded message\n"
                }
            },
            "type": "object",
            "required": [
                "binaryToTextEncoding",
                "inputRepresentation",
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorGeoIpParser:LogsCustomPipelineProcessorPipelineProcessorGeoIpParser": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the parent attribute that contains all the extracted details from the sources.\n"
                }
            },
            "type": "object",
            "required": [
                "sources",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorGrokParser:LogsCustomPipelineProcessorPipelineProcessorGrokParser": {
            "properties": {
                "grok": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorGrokParserGrok:LogsCustomPipelineProcessorPipelineProcessorGrokParserGrok"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "samples": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of sample logs for this parser. It can save up to 5 samples. Each sample takes up to 5000 characters.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Name of the log attribute to parse.\n"
                }
            },
            "type": "object",
            "required": [
                "grok",
                "source"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorGrokParserGrok:LogsCustomPipelineProcessorPipelineProcessorGrokParserGrok": {
            "properties": {
                "matchRules": {
                    "type": "string",
                    "description": "Match rules for your grok parser.\n"
                },
                "supportRules": {
                    "type": "string",
                    "description": "Support rules for your grok parser.\n"
                }
            },
            "type": "object",
            "required": [
                "matchRules",
                "supportRules"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorLookupProcessor:LogsCustomPipelineProcessorPipelineProcessorLookupProcessor": {
            "properties": {
                "defaultLookup": {
                    "type": "string",
                    "description": "Default lookup value to use if there is no entry in the lookup table for the value of the source attribute.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "lookupTables": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of entries of the lookup table using `key,value` format.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "source": {
                    "type": "string",
                    "description": "Name of the source attribute used to do the lookup.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the attribute that contains the result of the lookup.\n"
                }
            },
            "type": "object",
            "required": [
                "lookupTables",
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorMessageRemapper:LogsCustomPipelineProcessorPipelineProcessorMessageRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorReferenceTableLookupProcessor:LogsCustomPipelineProcessorPipelineProcessorReferenceTableLookupProcessor": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "lookupEnrichmentTable": {
                    "type": "string",
                    "description": "Name of the Reference Table for the source attribute and their associated target attribute values.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "source": {
                    "type": "string",
                    "description": "Name of the source attribute used to do the lookup.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the attribute that contains the result of the lookup.\n"
                }
            },
            "type": "object",
            "required": [
                "lookupEnrichmentTable",
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessor:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessor": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "mappers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapper:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapper"
                    },
                    "description": "Array of mappers for the schema processor.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the processor.\n"
                },
                "schema": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorSchema:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorSchema",
                    "description": "Configuration of the schema data to use.\n"
                }
            },
            "type": "object",
            "required": [
                "mappers",
                "schema"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapper:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapper": {
            "properties": {
                "schemaCategoryMappers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapper:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapper"
                    },
                    "description": "Mapper that categorizes log events into enum fields. In the case of OCSF, they can be used to map sibling fields which are composed of an ID and a name.\n"
                },
                "schemaRemappers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaRemapper:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaRemapper"
                    },
                    "description": "Mapper that maps source log fields to their correct fields.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapper:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapper": {
            "properties": {
                "categories": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategory:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategory"
                    },
                    "description": "Object describing the logs filter with corresponding category ID.\n"
                },
                "fallback": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperFallback:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperFallback",
                    "description": "Used to override hardcoded category values with a value pulled from a source attribute on the log.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the logs schema category mapper.\n"
                },
                "targets": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperTargets:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperTargets",
                    "description": "Name of the target attributes which value is defined by the matching.\n"
                }
            },
            "type": "object",
            "required": [
                "categories",
                "name",
                "targets"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategory:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategory": {
            "properties": {
                "filter": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategoryFilter:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategoryFilter"
                },
                "id": {
                    "type": "integer",
                    "description": "ID to inject into the category.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Value to assign to target schema field.\n"
                }
            },
            "type": "object",
            "required": [
                "filter",
                "id",
                "name"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategoryFilter:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategoryFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Filter criteria of the category.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperFallback:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperFallback": {
            "properties": {
                "sources": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Fallback sources used to populate value of field.\n"
                },
                "values": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Values that define when the fallback is used.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperTargets:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperTargets": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the field to map log attributes to\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the field to map log attributes to.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaRemapper:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorMapperSchemaRemapper": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the logs schema remapper.\n"
                },
                "overrideOnConflict": {
                    "type": "boolean",
                    "description": "Override or not the target element if already set.\n"
                },
                "preserveSource": {
                    "type": "boolean",
                    "description": "Remove or preserve the remapped source element.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of source attributes.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Target field to map log source field to\n"
                },
                "targetFormat": {
                    "type": "string",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`targetType`\" pulumi-lang-dotnet=\"`TargetType`\" pulumi-lang-go=\"`targetType`\" pulumi-lang-python=\"`target_type`\" pulumi-lang-yaml=\"`targetType`\" pulumi-lang-java=\"`targetType`\"\u003e`targetType`\u003c/span\u003e of the remapper is \u003cspan pulumi-lang-nodejs=\"`attribute`\" pulumi-lang-dotnet=\"`Attribute`\" pulumi-lang-go=\"`attribute`\" pulumi-lang-python=\"`attribute`\" pulumi-lang-yaml=\"`attribute`\" pulumi-lang-java=\"`attribute`\"\u003e`attribute`\u003c/span\u003e, try to cast the value to a new specific type. If the cast is not possible, the original type is kept. \u003cspan pulumi-lang-nodejs=\"`string`\" pulumi-lang-dotnet=\"`String`\" pulumi-lang-go=\"`string`\" pulumi-lang-python=\"`string`\" pulumi-lang-yaml=\"`string`\" pulumi-lang-java=\"`string`\"\u003e`string`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`integer`\" pulumi-lang-dotnet=\"`Integer`\" pulumi-lang-go=\"`integer`\" pulumi-lang-python=\"`integer`\" pulumi-lang-yaml=\"`integer`\" pulumi-lang-java=\"`integer`\"\u003e`integer`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`double`\" pulumi-lang-dotnet=\"`Double`\" pulumi-lang-go=\"`double`\" pulumi-lang-python=\"`double`\" pulumi-lang-yaml=\"`double`\" pulumi-lang-java=\"`double`\"\u003e`double`\u003c/span\u003e are the possible types. If the \u003cspan pulumi-lang-nodejs=\"`targetType`\" pulumi-lang-dotnet=\"`TargetType`\" pulumi-lang-go=\"`targetType`\" pulumi-lang-python=\"`target_type`\" pulumi-lang-yaml=\"`targetType`\" pulumi-lang-java=\"`targetType`\"\u003e`targetType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e, this parameter may not be specified.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "sources",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorSchema:LogsCustomPipelineProcessorPipelineProcessorSchemaProcessorSchema": {
            "properties": {
                "className": {
                    "type": "string",
                    "description": "Class name of the schema to use.\n"
                },
                "classUid": {
                    "type": "integer",
                    "description": "Class UID of the schema to use.\n"
                },
                "extensions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Optional list of extensions to modify the schema.\n"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Optional list of profiles to modify the schema.\n"
                },
                "schemaType": {
                    "type": "string",
                    "description": "Type of schema to use.\n"
                },
                "version": {
                    "type": "string",
                    "description": "Version of the schema to use.\n"
                }
            },
            "type": "object",
            "required": [
                "className",
                "classUid",
                "schemaType",
                "version"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorServiceRemapper:LogsCustomPipelineProcessorPipelineProcessorServiceRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorSpanIdRemapper:LogsCustomPipelineProcessorPipelineProcessorSpanIdRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorStatusRemapper:LogsCustomPipelineProcessorPipelineProcessorStatusRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorStringBuilderProcessor:LogsCustomPipelineProcessorPipelineProcessorStringBuilderProcessor": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "isReplaceMissing": {
                    "type": "boolean",
                    "description": "If it replaces all missing attributes of template by an empty string.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the processor.\n"
                },
                "target": {
                    "type": "string",
                    "description": "The name of the attribute that contains the result of the template.\n"
                },
                "template": {
                    "type": "string",
                    "description": "The formula with one or more attributes and raw text.\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "template"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorTraceIdRemapper:LogsCustomPipelineProcessorPipelineProcessorTraceIdRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorUrlParser:LogsCustomPipelineProcessorPipelineProcessorUrlParser": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "normalizeEndingSlashes": {
                    "type": "boolean",
                    "description": "Normalize the ending slashes or not.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the parent attribute that contains all the extracted details from the sources.\n"
                }
            },
            "type": "object",
            "required": [
                "sources",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorPipelineProcessorUserAgentParser:LogsCustomPipelineProcessorPipelineProcessorUserAgentParser": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "isEncoded": {
                    "type": "boolean",
                    "description": "If the source attribute is URL encoded or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the parent attribute that contains all the extracted details from the sources.\n"
                }
            },
            "type": "object",
            "required": [
                "sources",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorReferenceTableLookupProcessor:LogsCustomPipelineProcessorReferenceTableLookupProcessor": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "lookupEnrichmentTable": {
                    "type": "string",
                    "description": "Name of the Reference Table for the source attribute and their associated target attribute values.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "source": {
                    "type": "string",
                    "description": "Name of the source attribute used to do the lookup.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the attribute that contains the result of the lookup.\n"
                }
            },
            "type": "object",
            "required": [
                "lookupEnrichmentTable",
                "source",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessor:LogsCustomPipelineProcessorSchemaProcessor": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "mappers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapper:LogsCustomPipelineProcessorSchemaProcessorMapper"
                    },
                    "description": "Array of mappers for the schema processor.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the processor.\n"
                },
                "schema": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessorSchema:LogsCustomPipelineProcessorSchemaProcessorSchema",
                    "description": "Configuration of the schema data to use.\n"
                }
            },
            "type": "object",
            "required": [
                "mappers",
                "schema"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapper:LogsCustomPipelineProcessorSchemaProcessorMapper": {
            "properties": {
                "schemaCategoryMappers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapper:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapper"
                    },
                    "description": "Mapper that categorizes log events into enum fields. In the case of OCSF, they can be used to map sibling fields which are composed of an ID and a name.\n"
                },
                "schemaRemappers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaRemapper:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaRemapper"
                    },
                    "description": "Mapper that maps source log fields to their correct fields.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapper:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapper": {
            "properties": {
                "categories": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategory:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategory"
                    },
                    "description": "Object describing the logs filter with corresponding category ID.\n"
                },
                "fallback": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperFallback:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperFallback",
                    "description": "Used to override hardcoded category values with a value pulled from a source attribute on the log.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the logs schema category mapper.\n"
                },
                "targets": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperTargets:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperTargets",
                    "description": "Name of the target attributes which value is defined by the matching.\n"
                }
            },
            "type": "object",
            "required": [
                "categories",
                "name",
                "targets"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategory:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategory": {
            "properties": {
                "filter": {
                    "$ref": "#/types/datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategoryFilter:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategoryFilter"
                },
                "id": {
                    "type": "integer",
                    "description": "ID to inject into the category.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Value to assign to target schema field.\n"
                }
            },
            "type": "object",
            "required": [
                "filter",
                "id",
                "name"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategoryFilter:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperCategoryFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Filter criteria of the category.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperFallback:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperFallback": {
            "properties": {
                "sources": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Fallback sources used to populate value of field.\n"
                },
                "values": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Values that define when the fallback is used.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperTargets:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaCategoryMapperTargets": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the field to map log attributes to\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the field to map log attributes to.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessorMapperSchemaRemapper:LogsCustomPipelineProcessorSchemaProcessorMapperSchemaRemapper": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the logs schema remapper.\n"
                },
                "overrideOnConflict": {
                    "type": "boolean",
                    "description": "Override or not the target element if already set.\n"
                },
                "preserveSource": {
                    "type": "boolean",
                    "description": "Remove or preserve the remapped source element.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of source attributes.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Target field to map log source field to\n"
                },
                "targetFormat": {
                    "type": "string",
                    "description": "If the \u003cspan pulumi-lang-nodejs=\"`targetType`\" pulumi-lang-dotnet=\"`TargetType`\" pulumi-lang-go=\"`targetType`\" pulumi-lang-python=\"`target_type`\" pulumi-lang-yaml=\"`targetType`\" pulumi-lang-java=\"`targetType`\"\u003e`targetType`\u003c/span\u003e of the remapper is \u003cspan pulumi-lang-nodejs=\"`attribute`\" pulumi-lang-dotnet=\"`Attribute`\" pulumi-lang-go=\"`attribute`\" pulumi-lang-python=\"`attribute`\" pulumi-lang-yaml=\"`attribute`\" pulumi-lang-java=\"`attribute`\"\u003e`attribute`\u003c/span\u003e, try to cast the value to a new specific type. If the cast is not possible, the original type is kept. \u003cspan pulumi-lang-nodejs=\"`string`\" pulumi-lang-dotnet=\"`String`\" pulumi-lang-go=\"`string`\" pulumi-lang-python=\"`string`\" pulumi-lang-yaml=\"`string`\" pulumi-lang-java=\"`string`\"\u003e`string`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`integer`\" pulumi-lang-dotnet=\"`Integer`\" pulumi-lang-go=\"`integer`\" pulumi-lang-python=\"`integer`\" pulumi-lang-yaml=\"`integer`\" pulumi-lang-java=\"`integer`\"\u003e`integer`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`double`\" pulumi-lang-dotnet=\"`Double`\" pulumi-lang-go=\"`double`\" pulumi-lang-python=\"`double`\" pulumi-lang-yaml=\"`double`\" pulumi-lang-java=\"`double`\"\u003e`double`\u003c/span\u003e are the possible types. If the \u003cspan pulumi-lang-nodejs=\"`targetType`\" pulumi-lang-dotnet=\"`TargetType`\" pulumi-lang-go=\"`targetType`\" pulumi-lang-python=\"`target_type`\" pulumi-lang-yaml=\"`targetType`\" pulumi-lang-java=\"`targetType`\"\u003e`targetType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e, this parameter may not be specified.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "sources",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorSchemaProcessorSchema:LogsCustomPipelineProcessorSchemaProcessorSchema": {
            "properties": {
                "className": {
                    "type": "string",
                    "description": "Class name of the schema to use.\n"
                },
                "classUid": {
                    "type": "integer",
                    "description": "Class UID of the schema to use.\n"
                },
                "extensions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Optional list of extensions to modify the schema.\n"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Optional list of profiles to modify the schema.\n"
                },
                "schemaType": {
                    "type": "string",
                    "description": "Type of schema to use.\n"
                },
                "version": {
                    "type": "string",
                    "description": "Version of the schema to use.\n"
                }
            },
            "type": "object",
            "required": [
                "className",
                "classUid",
                "schemaType",
                "version"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorServiceRemapper:LogsCustomPipelineProcessorServiceRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorSpanIdRemapper:LogsCustomPipelineProcessorSpanIdRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorStatusRemapper:LogsCustomPipelineProcessorStatusRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorStringBuilderProcessor:LogsCustomPipelineProcessorStringBuilderProcessor": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "isReplaceMissing": {
                    "type": "boolean",
                    "description": "If it replaces all missing attributes of template by an empty string.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the processor.\n"
                },
                "target": {
                    "type": "string",
                    "description": "The name of the attribute that contains the result of the template.\n"
                },
                "template": {
                    "type": "string",
                    "description": "The formula with one or more attributes and raw text.\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "template"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorTraceIdRemapper:LogsCustomPipelineProcessorTraceIdRemapper": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                }
            },
            "type": "object",
            "required": [
                "sources"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorUrlParser:LogsCustomPipelineProcessorUrlParser": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "normalizeEndingSlashes": {
                    "type": "boolean",
                    "description": "Normalize the ending slashes or not.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the parent attribute that contains all the extracted details from the sources.\n"
                }
            },
            "type": "object",
            "required": [
                "sources",
                "target"
            ]
        },
        "datadog:index/LogsCustomPipelineProcessorUserAgentParser:LogsCustomPipelineProcessorUserAgentParser": {
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "If the processor is enabled or not.\n"
                },
                "isEncoded": {
                    "type": "boolean",
                    "description": "If the source attribute is URL encoded or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the processor\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of source attributes.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Name of the parent attribute that contains all the extracted details from the sources.\n"
                }
            },
            "type": "object",
            "required": [
                "sources",
                "target"
            ]
        },
        "datadog:index/LogsIndexDailyLimitReset:LogsIndexDailyLimitReset": {
            "properties": {
                "resetTime": {
                    "type": "string",
                    "description": "String in `HH:00` format representing the time of day the daily limit should be reset. The hours must be between 00 and 23 (inclusive).\n"
                },
                "resetUtcOffset": {
                    "type": "string",
                    "description": "String in `(-|+)HH:00` format representing the UTC offset to apply to the given reset time. The hours must be between -12 and +14 (inclusive).\n"
                }
            },
            "type": "object",
            "required": [
                "resetTime",
                "resetUtcOffset"
            ]
        },
        "datadog:index/LogsIndexExclusionFilter:LogsIndexExclusionFilter": {
            "properties": {
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsIndexExclusionFilterFilter:LogsIndexExclusionFilterFilter"
                    }
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "A boolean stating if the exclusion is active or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the exclusion filter.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsIndexExclusionFilterFilter:LogsIndexExclusionFilterFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Only logs matching the filter criteria and the query of the parent index will be considered for this exclusion filter.\n"
                },
                "sampleRate": {
                    "type": "number",
                    "description": "The fraction of logs excluded by the exclusion filter, when active.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/LogsIndexFilter:LogsIndexFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Logs filter criteria. Only logs matching this filter criteria are considered for this index.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/LogsMetricCompute:LogsMetricCompute": {
            "properties": {
                "aggregationType": {
                    "type": "string",
                    "description": "The type of aggregation to use. This field can't be updated after creation. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e.\n",
                    "willReplaceOnChanges": true
                },
                "includePercentiles": {
                    "type": "boolean",
                    "description": "Toggle to include/exclude percentiles for a distribution metric. Defaults to false. Can only be applied to metrics that have an \u003cspan pulumi-lang-nodejs=\"`aggregationType`\" pulumi-lang-dotnet=\"`AggregationType`\" pulumi-lang-go=\"`aggregationType`\" pulumi-lang-python=\"`aggregation_type`\" pulumi-lang-yaml=\"`aggregationType`\" pulumi-lang-java=\"`aggregationType`\"\u003e`aggregationType`\u003c/span\u003e of distribution.\n"
                },
                "path": {
                    "type": "string",
                    "description": "The path to the value the log-based metric will aggregate on (only used if the aggregation type is a \"distribution\"). This field can't be updated after creation.\n",
                    "willReplaceOnChanges": true
                }
            },
            "type": "object",
            "required": [
                "aggregationType"
            ]
        },
        "datadog:index/LogsMetricFilter:LogsMetricFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The search query - following the log search syntax.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/LogsMetricGroupBy:LogsMetricGroupBy": {
            "properties": {
                "path": {
                    "type": "string",
                    "description": "The path to the value the log-based metric will be aggregated over.\n"
                },
                "tagName": {
                    "type": "string",
                    "description": "Name of the tag that gets created.\n"
                }
            },
            "type": "object",
            "required": [
                "path",
                "tagName"
            ]
        },
        "datadog:index/MetricTagConfigurationAggregation:MetricTagConfigurationAggregation": {
            "properties": {
                "space": {
                    "type": "string",
                    "description": "A space aggregation for use in query. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e.\n"
                },
                "time": {
                    "type": "string",
                    "description": "A time aggregation for use in query. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "space",
                "time"
            ]
        },
        "datadog:index/MonitorAsset:MonitorAsset": {
            "properties": {
                "category": {
                    "type": "string",
                    "description": "Type of asset the entity represents on a monitor. Valid values are \u003cspan pulumi-lang-nodejs=\"`runbook`\" pulumi-lang-dotnet=\"`Runbook`\" pulumi-lang-go=\"`runbook`\" pulumi-lang-python=\"`runbook`\" pulumi-lang-yaml=\"`runbook`\" pulumi-lang-java=\"`runbook`\"\u003e`runbook`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name for the monitor asset.\n"
                },
                "resourceKey": {
                    "type": "string",
                    "description": "Identifier of the internal Datadog resource that this asset represents.\n"
                },
                "resourceType": {
                    "type": "string",
                    "description": "Type of internal Datadog resource associated with a monitor asset. Valid values are \u003cspan pulumi-lang-nodejs=\"`notebook`\" pulumi-lang-dotnet=\"`Notebook`\" pulumi-lang-go=\"`notebook`\" pulumi-lang-python=\"`notebook`\" pulumi-lang-yaml=\"`notebook`\" pulumi-lang-java=\"`notebook`\"\u003e`notebook`\u003c/span\u003e.\n"
                },
                "url": {
                    "type": "string",
                    "description": "URL for the asset.\n"
                }
            },
            "type": "object",
            "required": [
                "category",
                "name",
                "url"
            ]
        },
        "datadog:index/MonitorConfigPolicyTagPolicy:MonitorConfigPolicyTagPolicy": {
            "properties": {
                "tagKey": {
                    "type": "string",
                    "description": "The key of the tag\n"
                },
                "tagKeyRequired": {
                    "type": "boolean",
                    "description": "If a tag key is required for monitor creation\n"
                },
                "validTagValues": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Valid values for the tag\n"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagKeyRequired",
                "validTagValues"
            ]
        },
        "datadog:index/MonitorMonitorThresholdWindows:MonitorMonitorThresholdWindows": {
            "properties": {
                "recoveryWindow": {
                    "type": "string",
                    "description": "Describes how long an anomalous metric must be normal before the alert recovers.\n"
                },
                "triggerWindow": {
                    "type": "string",
                    "description": "Describes how long a metric must be anomalous before an alert triggers.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/MonitorMonitorThresholds:MonitorMonitorThresholds": {
            "properties": {
                "critical": {
                    "type": "string",
                    "description": "The monitor `CRITICAL` threshold. Must be a number.\n"
                },
                "criticalRecovery": {
                    "type": "string",
                    "description": "The monitor `CRITICAL` recovery threshold. Must be a number.\n"
                },
                "ok": {
                    "type": "string",
                    "description": "The monitor `OK` threshold. Only supported in monitor type `service check`. Must be a number.\n"
                },
                "unknown": {
                    "type": "string",
                    "description": "The monitor `UNKNOWN` threshold. Only supported in monitor type `service check`. Must be a number.\n"
                },
                "warning": {
                    "type": "string",
                    "description": "The monitor `WARNING` threshold. Must be a number.\n"
                },
                "warningRecovery": {
                    "type": "string",
                    "description": "The monitor `WARNING` recovery threshold. Must be a number.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/MonitorNotificationRuleConditionalRecipients:MonitorNotificationRuleConditionalRecipients": {
            "properties": {
                "conditions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MonitorNotificationRuleConditionalRecipientsCondition:MonitorNotificationRuleConditionalRecipientsCondition"
                    },
                    "description": "Conditions of the notification rule.\n"
                },
                "fallbackRecipients": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "If none of the \u003cspan pulumi-lang-nodejs=\"`conditions`\" pulumi-lang-dotnet=\"`Conditions`\" pulumi-lang-go=\"`conditions`\" pulumi-lang-python=\"`conditions`\" pulumi-lang-yaml=\"`conditions`\" pulumi-lang-java=\"`conditions`\"\u003e`conditions`\u003c/span\u003e applied, \u003cspan pulumi-lang-nodejs=\"`fallbackRecipients`\" pulumi-lang-dotnet=\"`FallbackRecipients`\" pulumi-lang-go=\"`fallbackRecipients`\" pulumi-lang-python=\"`fallback_recipients`\" pulumi-lang-yaml=\"`fallbackRecipients`\" pulumi-lang-java=\"`fallbackRecipients`\"\u003e`fallbackRecipients`\u003c/span\u003e will get notified.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/MonitorNotificationRuleConditionalRecipientsCondition:MonitorNotificationRuleConditionalRecipientsCondition": {
            "properties": {
                "recipients": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of recipients to notify. Uses the same format as the monitor message field. Must not start with an '@'.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "Defines the condition under which the recipients are notified. Supported formats: Monitor status condition using `transition_type:\u003cstatus\u003e` (for example `transition_type:is_alert`) or a single tag `key:value pair` (for example `env:prod`).\n"
                }
            },
            "type": "object",
            "required": [
                "recipients",
                "scope"
            ]
        },
        "datadog:index/MonitorNotificationRuleFilter:MonitorNotificationRuleFilter": {
            "properties": {
                "scope": {
                    "type": "string",
                    "description": "A scope expression composed of `key:value` pairs (such as `env:prod`) with boolean operators (AND, OR, NOT) and parentheses for grouping.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag key:value pairs (e.g. team:product). All tags must match (AND semantics).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/MonitorSchedulingOptions:MonitorSchedulingOptions": {
            "properties": {
                "customSchedule": {
                    "$ref": "#/types/datadog:index/MonitorSchedulingOptionsCustomSchedule:MonitorSchedulingOptionsCustomSchedule",
                    "description": "Configuration options for the custom schedules. If \u003cspan pulumi-lang-nodejs=\"`start`\" pulumi-lang-dotnet=\"`Start`\" pulumi-lang-go=\"`start`\" pulumi-lang-python=\"`start`\" pulumi-lang-yaml=\"`start`\" pulumi-lang-java=\"`start`\"\u003e`start`\u003c/span\u003e is omitted, the monitor creation time will be used.\n"
                },
                "evaluationWindow": {
                    "$ref": "#/types/datadog:index/MonitorSchedulingOptionsEvaluationWindow:MonitorSchedulingOptionsEvaluationWindow",
                    "description": "Configuration options for the evaluation window. If \u003cspan pulumi-lang-nodejs=\"`hourStarts`\" pulumi-lang-dotnet=\"`HourStarts`\" pulumi-lang-go=\"`hourStarts`\" pulumi-lang-python=\"`hour_starts`\" pulumi-lang-yaml=\"`hourStarts`\" pulumi-lang-java=\"`hourStarts`\"\u003e`hourStarts`\u003c/span\u003e is set, no other fields may be set. Otherwise, \u003cspan pulumi-lang-nodejs=\"`dayStarts`\" pulumi-lang-dotnet=\"`DayStarts`\" pulumi-lang-go=\"`dayStarts`\" pulumi-lang-python=\"`day_starts`\" pulumi-lang-yaml=\"`dayStarts`\" pulumi-lang-java=\"`dayStarts`\"\u003e`dayStarts`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`monthStarts`\" pulumi-lang-dotnet=\"`MonthStarts`\" pulumi-lang-go=\"`monthStarts`\" pulumi-lang-python=\"`month_starts`\" pulumi-lang-yaml=\"`monthStarts`\" pulumi-lang-java=\"`monthStarts`\"\u003e`monthStarts`\u003c/span\u003e must be set together.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/MonitorSchedulingOptionsCustomSchedule:MonitorSchedulingOptionsCustomSchedule": {
            "properties": {
                "recurrence": {
                    "$ref": "#/types/datadog:index/MonitorSchedulingOptionsCustomScheduleRecurrence:MonitorSchedulingOptionsCustomScheduleRecurrence",
                    "description": "A list of recurrence definitions. Length must be 1.\n"
                }
            },
            "type": "object",
            "required": [
                "recurrence"
            ]
        },
        "datadog:index/MonitorSchedulingOptionsCustomScheduleRecurrence:MonitorSchedulingOptionsCustomScheduleRecurrence": {
            "properties": {
                "rrule": {
                    "type": "string",
                    "description": "Must be a valid \u003cspan pulumi-lang-nodejs=\"`rrule`\" pulumi-lang-dotnet=\"`Rrule`\" pulumi-lang-go=\"`rrule`\" pulumi-lang-python=\"`rrule`\" pulumi-lang-yaml=\"`rrule`\" pulumi-lang-java=\"`rrule`\"\u003e`rrule`\u003c/span\u003e. See API docs for supported fields\n"
                },
                "start": {
                    "type": "string",
                    "description": "Time to start recurrence cycle. Similar to DTSTART. Expected format 'YYYY-MM-DDThh:mm:ss'\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "'tz database' format. Example: `America/New_York` or `UTC`\n"
                }
            },
            "type": "object",
            "required": [
                "rrule",
                "timezone"
            ]
        },
        "datadog:index/MonitorSchedulingOptionsEvaluationWindow:MonitorSchedulingOptionsEvaluationWindow": {
            "properties": {
                "dayStarts": {
                    "type": "string",
                    "description": "The time of the day at which a one day cumulative evaluation window starts. Must be defined in UTC time in `HH:mm` format.\n"
                },
                "hourStarts": {
                    "type": "integer",
                    "description": "The minute of the hour at which a one hour cumulative evaluation window starts. Must be between 0 and 59.\n"
                },
                "monthStarts": {
                    "type": "integer",
                    "description": "The day of the month at which a one month cumulative evaluation window starts. Must be a value of 1.\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "The timezone for the cumulative evaluation window start time.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/MonitorVariables:MonitorVariables": {
            "properties": {
                "cloudCostQueries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MonitorVariablesCloudCostQuery:MonitorVariablesCloudCostQuery"
                    },
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "dataQualityQueries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MonitorVariablesDataQualityQuery:MonitorVariablesDataQualityQuery"
                    },
                    "description": "The Data Quality query using formulas and functions.\n"
                },
                "eventQueries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MonitorVariablesEventQuery:MonitorVariablesEventQuery"
                    },
                    "description": "A timeseries formula and functions events query.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/MonitorVariablesCloudCostQuery:MonitorVariablesCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`stddev`\" pulumi-lang-dotnet=\"`Stddev`\" pulumi-lang-go=\"`stddev`\" pulumi-lang-python=\"`stddev`\" pulumi-lang-yaml=\"`stddev`\" pulumi-lang-java=\"`stddev`\"\u003e`stddev`\u003c/span\u003e.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`metrics`\" pulumi-lang-dotnet=\"`Metrics`\" pulumi-lang-go=\"`metrics`\" pulumi-lang-python=\"`metrics`\" pulumi-lang-yaml=\"`metrics`\" pulumi-lang-java=\"`metrics`\"\u003e`metrics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`datadogUsage`\" pulumi-lang-dotnet=\"`DatadogUsage`\" pulumi-lang-go=\"`datadogUsage`\" pulumi-lang-python=\"`datadog_usage`\" pulumi-lang-yaml=\"`datadogUsage`\" pulumi-lang-java=\"`datadogUsage`\"\u003e`datadogUsage`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregator",
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/MonitorVariablesDataQualityQuery:MonitorVariablesDataQualityQuery": {
            "properties": {
                "dataSource": {
                    "type": "string",
                    "description": "The data source for data quality queries. Valid value is \u003cspan pulumi-lang-nodejs=\"`dataQualityMetrics`\" pulumi-lang-dotnet=\"`DataQualityMetrics`\" pulumi-lang-go=\"`dataQualityMetrics`\" pulumi-lang-python=\"`data_quality_metrics`\" pulumi-lang-yaml=\"`dataQualityMetrics`\" pulumi-lang-java=\"`dataQualityMetrics`\"\u003e`dataQualityMetrics`\u003c/span\u003e. Valid values are \u003cspan pulumi-lang-nodejs=\"`dataQualityMetrics`\" pulumi-lang-dotnet=\"`DataQualityMetrics`\" pulumi-lang-go=\"`dataQualityMetrics`\" pulumi-lang-python=\"`data_quality_metrics`\" pulumi-lang-yaml=\"`dataQualityMetrics`\" pulumi-lang-java=\"`dataQualityMetrics`\"\u003e`dataQualityMetrics`\u003c/span\u003e.\n"
                },
                "filter": {
                    "type": "string",
                    "description": "Filter expression used to match on data entities. Uses AAstra query syntax.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Optional grouping fields for aggregation.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "The measure to query. Common values include \u003cspan pulumi-lang-nodejs=\"`bytes`\" pulumi-lang-dotnet=\"`Bytes`\" pulumi-lang-go=\"`bytes`\" pulumi-lang-python=\"`bytes`\" pulumi-lang-yaml=\"`bytes`\" pulumi-lang-java=\"`bytes`\"\u003e`bytes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`freshness`\" pulumi-lang-dotnet=\"`Freshness`\" pulumi-lang-go=\"`freshness`\" pulumi-lang-python=\"`freshness`\" pulumi-lang-yaml=\"`freshness`\" pulumi-lang-java=\"`freshness`\"\u003e`freshness`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`mean`\" pulumi-lang-dotnet=\"`Mean`\" pulumi-lang-go=\"`mean`\" pulumi-lang-python=\"`mean`\" pulumi-lang-yaml=\"`mean`\" pulumi-lang-java=\"`mean`\"\u003e`mean`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`nullness`\" pulumi-lang-dotnet=\"`Nullness`\" pulumi-lang-go=\"`nullness`\" pulumi-lang-python=\"`nullness`\" pulumi-lang-yaml=\"`nullness`\" pulumi-lang-java=\"`nullness`\"\u003e`nullness`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentNegative`\" pulumi-lang-dotnet=\"`PercentNegative`\" pulumi-lang-go=\"`percentNegative`\" pulumi-lang-python=\"`percent_negative`\" pulumi-lang-yaml=\"`percentNegative`\" pulumi-lang-java=\"`percentNegative`\"\u003e`percentNegative`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentZero`\" pulumi-lang-dotnet=\"`PercentZero`\" pulumi-lang-go=\"`percentZero`\" pulumi-lang-python=\"`percent_zero`\" pulumi-lang-yaml=\"`percentZero`\" pulumi-lang-java=\"`percentZero`\"\u003e`percentZero`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rowCount`\" pulumi-lang-dotnet=\"`RowCount`\" pulumi-lang-go=\"`rowCount`\" pulumi-lang-python=\"`row_count`\" pulumi-lang-yaml=\"`rowCount`\" pulumi-lang-java=\"`rowCount`\"\u003e`rowCount`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`stddev`\" pulumi-lang-dotnet=\"`Stddev`\" pulumi-lang-go=\"`stddev`\" pulumi-lang-python=\"`stddev`\" pulumi-lang-yaml=\"`stddev`\" pulumi-lang-java=\"`stddev`\"\u003e`stddev`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`uniqueness`\" pulumi-lang-dotnet=\"`Uniqueness`\" pulumi-lang-go=\"`uniqueness`\" pulumi-lang-python=\"`uniqueness`\" pulumi-lang-yaml=\"`uniqueness`\" pulumi-lang-java=\"`uniqueness`\"\u003e`uniqueness`\u003c/span\u003e. Additional values may be supported.\n"
                },
                "monitorOptions": {
                    "$ref": "#/types/datadog:index/MonitorVariablesDataQualityQueryMonitorOptions:MonitorVariablesDataQualityQueryMonitorOptions",
                    "description": "Monitor configuration options for data quality queries.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "schemaVersion": {
                    "type": "string",
                    "description": "Schema version for the data quality query.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "Optional scoping expression to further filter metrics.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "filter",
                "measure",
                "name"
            ]
        },
        "datadog:index/MonitorVariablesDataQualityQueryMonitorOptions:MonitorVariablesDataQualityQueryMonitorOptions": {
            "properties": {
                "crontabOverride": {
                    "type": "string",
                    "description": "Crontab expression to override the default schedule.\n"
                },
                "customSql": {
                    "type": "string",
                    "description": "Custom SQL query for the monitor.\n"
                },
                "customWhere": {
                    "type": "string",
                    "description": "Custom WHERE clause for the query.\n"
                },
                "groupByColumns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Columns to group results by.\n"
                },
                "modelTypeOverride": {
                    "type": "string",
                    "description": "Override for the model type. Valid values are \u003cspan pulumi-lang-nodejs=\"`freshness`\" pulumi-lang-dotnet=\"`Freshness`\" pulumi-lang-go=\"`freshness`\" pulumi-lang-python=\"`freshness`\" pulumi-lang-yaml=\"`freshness`\" pulumi-lang-java=\"`freshness`\"\u003e`freshness`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentage`\" pulumi-lang-dotnet=\"`Percentage`\" pulumi-lang-go=\"`percentage`\" pulumi-lang-python=\"`percentage`\" pulumi-lang-yaml=\"`percentage`\" pulumi-lang-java=\"`percentage`\"\u003e`percentage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/MonitorVariablesEventQuery:MonitorVariablesEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MonitorVariablesEventQueryCompute:MonitorVariablesEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`databaseQueries`\" pulumi-lang-dotnet=\"`DatabaseQueries`\" pulumi-lang-go=\"`databaseQueries`\" pulumi-lang-python=\"`database_queries`\" pulumi-lang-yaml=\"`databaseQueries`\" pulumi-lang-java=\"`databaseQueries`\"\u003e`databaseQueries`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`networkPath`\" pulumi-lang-dotnet=\"`NetworkPath`\" pulumi-lang-go=\"`networkPath`\" pulumi-lang-python=\"`network_path`\" pulumi-lang-yaml=\"`networkPath`\" pulumi-lang-java=\"`networkPath`\"\u003e`networkPath`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MonitorVariablesEventQueryGroupBy:MonitorVariablesEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/MonitorVariablesEventQuerySearch:MonitorVariablesEventQuerySearch",
                    "description": "The search options.\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name",
                "search"
            ]
        },
        "datadog:index/MonitorVariablesEventQueryCompute:MonitorVariablesEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/MonitorVariablesEventQueryGroupBy:MonitorVariablesEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/MonitorVariablesEventQueryGroupBySort:MonitorVariablesEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/MonitorVariablesEventQueryGroupBySort:MonitorVariablesEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/MonitorVariablesEventQuerySearch:MonitorVariablesEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/ObservabilityPipelineConfig:ObservabilityPipelineConfig": {
            "properties": {
                "destinations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestination:ObservabilityPipelineConfigDestination"
                    },
                    "description": "List of destinations.\n"
                },
                "pipelineType": {
                    "type": "string",
                    "description": "The type of data being ingested. Defaults to \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e if not specified. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`metrics`\" pulumi-lang-dotnet=\"`Metrics`\" pulumi-lang-go=\"`metrics`\" pulumi-lang-python=\"`metrics`\" pulumi-lang-yaml=\"`metrics`\" pulumi-lang-java=\"`metrics`\"\u003e`metrics`\u003c/span\u003e.\n"
                },
                "processorGroups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroup:ObservabilityPipelineConfigProcessorGroup"
                    },
                    "description": "A processor group containing common configuration and nested processors.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSource:ObservabilityPipelineConfigSource"
                    },
                    "description": "List of sources.\n"
                },
                "useLegacySearchSyntax": {
                    "type": "boolean",
                    "description": "Set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to continue using the legacy search syntax while migrating filter queries. After migrating all queries to the new syntax, set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. The legacy syntax is deprecated and will eventually be removed. Requires Observability Pipelines Worker 2.11 or later. See https://docs.datadoghq.com/observability*pipelines/guide/upgrade*your*filter*queries*to*the*new*search_syntax/ for more information.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "pipelineType"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestination:ObservabilityPipelineConfigDestination": {
            "properties": {
                "amazonOpensearches": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearch:ObservabilityPipelineConfigDestinationAmazonOpensearch"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`amazonOpensearch`\" pulumi-lang-dotnet=\"`AmazonOpensearch`\" pulumi-lang-go=\"`amazonOpensearch`\" pulumi-lang-python=\"`amazon_opensearch`\" pulumi-lang-yaml=\"`amazonOpensearch`\" pulumi-lang-java=\"`amazonOpensearch`\"\u003e`amazonOpensearch`\u003c/span\u003e destination writes logs to Amazon OpenSearch.\n"
                },
                "amazonS3Generic": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3Generic:ObservabilityPipelineConfigDestinationAmazonS3Generic",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`amazonS3Generic`\" pulumi-lang-dotnet=\"`AmazonS3Generic`\" pulumi-lang-go=\"`amazonS3Generic`\" pulumi-lang-python=\"`amazon_s3_generic`\" pulumi-lang-yaml=\"`amazonS3Generic`\" pulumi-lang-java=\"`amazonS3Generic`\"\u003e`amazonS3Generic`\u003c/span\u003e destination sends your logs to an Amazon S3 bucket.\n"
                },
                "amazonS3s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3:ObservabilityPipelineConfigDestinationAmazonS3"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`amazonS3`\" pulumi-lang-dotnet=\"`AmazonS3`\" pulumi-lang-go=\"`amazonS3`\" pulumi-lang-python=\"`amazon_s3`\" pulumi-lang-yaml=\"`amazonS3`\" pulumi-lang-java=\"`amazonS3`\"\u003e`amazonS3`\u003c/span\u003e destination sends your logs in Datadog-rehydratable format to an Amazon S3 bucket for archiving.\n"
                },
                "amazonSecurityLakes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLake:ObservabilityPipelineConfigDestinationAmazonSecurityLake"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`amazonSecurityLake`\" pulumi-lang-dotnet=\"`AmazonSecurityLake`\" pulumi-lang-go=\"`amazonSecurityLake`\" pulumi-lang-python=\"`amazon_security_lake`\" pulumi-lang-yaml=\"`amazonSecurityLake`\" pulumi-lang-java=\"`amazonSecurityLake`\"\u003e`amazonSecurityLake`\u003c/span\u003e destination sends your logs to Amazon Security Lake.\n"
                },
                "azureStorages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAzureStorage:ObservabilityPipelineConfigDestinationAzureStorage"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`azureStorage`\" pulumi-lang-dotnet=\"`AzureStorage`\" pulumi-lang-go=\"`azureStorage`\" pulumi-lang-python=\"`azure_storage`\" pulumi-lang-yaml=\"`azureStorage`\" pulumi-lang-java=\"`azureStorage`\"\u003e`azureStorage`\u003c/span\u003e destination forwards logs to an Azure Blob Storage container.\n"
                },
                "cloudPrem": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationCloudPrem:ObservabilityPipelineConfigDestinationCloudPrem",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`cloudPrem`\" pulumi-lang-dotnet=\"`CloudPrem`\" pulumi-lang-go=\"`cloudPrem`\" pulumi-lang-python=\"`cloud_prem`\" pulumi-lang-yaml=\"`cloudPrem`\" pulumi-lang-java=\"`cloudPrem`\"\u003e`cloudPrem`\u003c/span\u003e destination sends logs to Datadog CloudPrem.\n"
                },
                "crowdstrikeNextGenSiems": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiem:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiem"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`crowdstrikeNextGenSiem`\" pulumi-lang-dotnet=\"`CrowdstrikeNextGenSiem`\" pulumi-lang-go=\"`crowdstrikeNextGenSiem`\" pulumi-lang-python=\"`crowdstrike_next_gen_siem`\" pulumi-lang-yaml=\"`crowdstrikeNextGenSiem`\" pulumi-lang-java=\"`crowdstrikeNextGenSiem`\"\u003e`crowdstrikeNextGenSiem`\u003c/span\u003e destination forwards logs to CrowdStrike Next Gen SIEM.\n"
                },
                "datadogLogs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogLog:ObservabilityPipelineConfigDestinationDatadogLog"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`datadogLogs`\" pulumi-lang-dotnet=\"`DatadogLogs`\" pulumi-lang-go=\"`datadogLogs`\" pulumi-lang-python=\"`datadog_logs`\" pulumi-lang-yaml=\"`datadogLogs`\" pulumi-lang-java=\"`datadogLogs`\"\u003e`datadogLogs`\u003c/span\u003e destination forwards logs to Datadog Log Management.\n"
                },
                "datadogMetrics": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogMetric:ObservabilityPipelineConfigDestinationDatadogMetric"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`datadog.getMetrics`\" pulumi-lang-dotnet=\"`datadog.getMetrics`\" pulumi-lang-go=\"`getMetrics`\" pulumi-lang-python=\"`get_metrics`\" pulumi-lang-yaml=\"`datadog.getMetrics`\" pulumi-lang-java=\"`datadog.getMetrics`\"\u003e`datadog.getMetrics`\u003c/span\u003e destination forwards metrics to Datadog.\n"
                },
                "elasticsearches": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationElasticsearch:ObservabilityPipelineConfigDestinationElasticsearch"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`elasticsearch`\" pulumi-lang-dotnet=\"`Elasticsearch`\" pulumi-lang-go=\"`elasticsearch`\" pulumi-lang-python=\"`elasticsearch`\" pulumi-lang-yaml=\"`elasticsearch`\" pulumi-lang-java=\"`elasticsearch`\"\u003e`elasticsearch`\u003c/span\u003e destination writes logs to an Elasticsearch cluster.\n"
                },
                "googleCloudStorages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorage:ObservabilityPipelineConfigDestinationGoogleCloudStorage"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`googleCloudStorage`\" pulumi-lang-dotnet=\"`GoogleCloudStorage`\" pulumi-lang-go=\"`googleCloudStorage`\" pulumi-lang-python=\"`google_cloud_storage`\" pulumi-lang-yaml=\"`googleCloudStorage`\" pulumi-lang-java=\"`googleCloudStorage`\"\u003e`googleCloudStorage`\u003c/span\u003e destination stores logs in a Google Cloud Storage (GCS) bucket.\n"
                },
                "googlePubsubs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGooglePubsub:ObservabilityPipelineConfigDestinationGooglePubsub"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`googlePubsub`\" pulumi-lang-dotnet=\"`GooglePubsub`\" pulumi-lang-go=\"`googlePubsub`\" pulumi-lang-python=\"`google_pubsub`\" pulumi-lang-yaml=\"`googlePubsub`\" pulumi-lang-java=\"`googlePubsub`\"\u003e`googlePubsub`\u003c/span\u003e destination publishes logs to a Google Cloud Pub/Sub topic.\n"
                },
                "googleSecops": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleSecop:ObservabilityPipelineConfigDestinationGoogleSecop"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`googleChronicle`\" pulumi-lang-dotnet=\"`GoogleChronicle`\" pulumi-lang-go=\"`googleChronicle`\" pulumi-lang-python=\"`google_chronicle`\" pulumi-lang-yaml=\"`googleChronicle`\" pulumi-lang-java=\"`googleChronicle`\"\u003e`googleChronicle`\u003c/span\u003e destination sends logs to Google SecOps.\n"
                },
                "httpClients": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationHttpClient:ObservabilityPipelineConfigDestinationHttpClient"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`httpClient`\" pulumi-lang-dotnet=\"`HttpClient`\" pulumi-lang-go=\"`httpClient`\" pulumi-lang-python=\"`http_client`\" pulumi-lang-yaml=\"`httpClient`\" pulumi-lang-java=\"`httpClient`\"\u003e`httpClient`\u003c/span\u003e destination sends data to an HTTP endpoint.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier for this destination.\n"
                },
                "inputs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of component IDs whose output is used as the \u003cspan pulumi-lang-nodejs=\"`input`\" pulumi-lang-dotnet=\"`Input`\" pulumi-lang-go=\"`input`\" pulumi-lang-python=\"`input`\" pulumi-lang-yaml=\"`input`\" pulumi-lang-java=\"`input`\"\u003e`input`\u003c/span\u003e for this component.\n"
                },
                "kafka": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationKafka:ObservabilityPipelineConfigDestinationKafka",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`kafka`\" pulumi-lang-dotnet=\"`Kafka`\" pulumi-lang-go=\"`kafka`\" pulumi-lang-python=\"`kafka`\" pulumi-lang-yaml=\"`kafka`\" pulumi-lang-java=\"`kafka`\"\u003e`kafka`\u003c/span\u003e destination sends logs to Apache Kafka topics.\n"
                },
                "microsoftSentinels": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationMicrosoftSentinel:ObservabilityPipelineConfigDestinationMicrosoftSentinel"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`microsoftSentinel`\" pulumi-lang-dotnet=\"`MicrosoftSentinel`\" pulumi-lang-go=\"`microsoftSentinel`\" pulumi-lang-python=\"`microsoft_sentinel`\" pulumi-lang-yaml=\"`microsoftSentinel`\" pulumi-lang-java=\"`microsoftSentinel`\"\u003e`microsoftSentinel`\u003c/span\u003e destination forwards logs to Microsoft Sentinel.\n"
                },
                "newRelics": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationNewRelic:ObservabilityPipelineConfigDestinationNewRelic"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`newRelic`\" pulumi-lang-dotnet=\"`NewRelic`\" pulumi-lang-go=\"`newRelic`\" pulumi-lang-python=\"`new_relic`\" pulumi-lang-yaml=\"`newRelic`\" pulumi-lang-java=\"`newRelic`\"\u003e`newRelic`\u003c/span\u003e destination sends logs to the New Relic platform.\n"
                },
                "opensearches": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationOpensearch:ObservabilityPipelineConfigDestinationOpensearch"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`opensearch`\" pulumi-lang-dotnet=\"`Opensearch`\" pulumi-lang-go=\"`opensearch`\" pulumi-lang-python=\"`opensearch`\" pulumi-lang-yaml=\"`opensearch`\" pulumi-lang-java=\"`opensearch`\"\u003e`opensearch`\u003c/span\u003e destination writes logs to an OpenSearch cluster.\n"
                },
                "rsyslogs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationRsyslog:ObservabilityPipelineConfigDestinationRsyslog"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`rsyslog`\" pulumi-lang-dotnet=\"`Rsyslog`\" pulumi-lang-go=\"`rsyslog`\" pulumi-lang-python=\"`rsyslog`\" pulumi-lang-yaml=\"`rsyslog`\" pulumi-lang-java=\"`rsyslog`\"\u003e`rsyslog`\u003c/span\u003e destination forwards logs to an external \u003cspan pulumi-lang-nodejs=\"`rsyslog`\" pulumi-lang-dotnet=\"`Rsyslog`\" pulumi-lang-go=\"`rsyslog`\" pulumi-lang-python=\"`rsyslog`\" pulumi-lang-yaml=\"`rsyslog`\" pulumi-lang-java=\"`rsyslog`\"\u003e`rsyslog`\u003c/span\u003e server over TCP or UDP using the syslog protocol.\n"
                },
                "sentinelOnes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSentinelOne:ObservabilityPipelineConfigDestinationSentinelOne"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`sentinelOne`\" pulumi-lang-dotnet=\"`SentinelOne`\" pulumi-lang-go=\"`sentinelOne`\" pulumi-lang-python=\"`sentinel_one`\" pulumi-lang-yaml=\"`sentinelOne`\" pulumi-lang-java=\"`sentinelOne`\"\u003e`sentinelOne`\u003c/span\u003e destination sends logs to SentinelOne.\n"
                },
                "sockets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSocket:ObservabilityPipelineConfigDestinationSocket"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`socket`\" pulumi-lang-dotnet=\"`Socket`\" pulumi-lang-go=\"`socket`\" pulumi-lang-python=\"`socket`\" pulumi-lang-yaml=\"`socket`\" pulumi-lang-java=\"`socket`\"\u003e`socket`\u003c/span\u003e destination sends logs over TCP or UDP to a remote server.\n"
                },
                "splunkHecs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSplunkHec:ObservabilityPipelineConfigDestinationSplunkHec"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`splunkHec`\" pulumi-lang-dotnet=\"`SplunkHec`\" pulumi-lang-go=\"`splunkHec`\" pulumi-lang-python=\"`splunk_hec`\" pulumi-lang-yaml=\"`splunkHec`\" pulumi-lang-java=\"`splunkHec`\"\u003e`splunkHec`\u003c/span\u003e destination forwards logs to Splunk using the HTTP Event Collector (HEC).\n"
                },
                "sumoLogics": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSumoLogic:ObservabilityPipelineConfigDestinationSumoLogic"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`sumoLogic`\" pulumi-lang-dotnet=\"`SumoLogic`\" pulumi-lang-go=\"`sumoLogic`\" pulumi-lang-python=\"`sumo_logic`\" pulumi-lang-yaml=\"`sumoLogic`\" pulumi-lang-java=\"`sumoLogic`\"\u003e`sumoLogic`\u003c/span\u003e destination forwards logs to Sumo Logic.\n"
                },
                "syslogNgs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSyslogNg:ObservabilityPipelineConfigDestinationSyslogNg"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`syslogNg`\" pulumi-lang-dotnet=\"`SyslogNg`\" pulumi-lang-go=\"`syslogNg`\" pulumi-lang-python=\"`syslog_ng`\" pulumi-lang-yaml=\"`syslogNg`\" pulumi-lang-java=\"`syslogNg`\"\u003e`syslogNg`\u003c/span\u003e destination forwards logs to an external `syslog-ng` server over TCP or UDP using the syslog protocol.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "inputs"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearch:ObservabilityPipelineConfigDestinationAmazonOpensearch": {
            "properties": {
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearchAuth:ObservabilityPipelineConfigDestinationAmazonOpensearchAuth"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearchBuffer:ObservabilityPipelineConfigDestinationAmazonOpensearchBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "bulkIndex": {
                    "type": "string",
                    "description": "The index or datastream to write logs to.\n"
                }
            },
            "type": "object",
            "required": [
                "auth"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearchAuth:ObservabilityPipelineConfigDestinationAmazonOpensearchAuth": {
            "properties": {
                "assumeRole": {
                    "type": "string",
                    "description": "ARN of the role to assume.\n"
                },
                "awsRegion": {
                    "type": "string",
                    "description": "AWS region override (if applicable).\n"
                },
                "externalId": {
                    "type": "string",
                    "description": "External ID for assumed role.\n"
                },
                "sessionName": {
                    "type": "string",
                    "description": "Session name for assumed role.\n"
                },
                "strategy": {
                    "type": "string",
                    "description": "The authentication strategy to use (e.g. aws or basic).\n"
                }
            },
            "type": "object",
            "required": [
                "strategy"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearchBuffer:ObservabilityPipelineConfigDestinationAmazonOpensearchBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearchBufferDisk:ObservabilityPipelineConfigDestinationAmazonOpensearchBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearchBufferMemory:ObservabilityPipelineConfigDestinationAmazonOpensearchBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearchBufferDisk:ObservabilityPipelineConfigDestinationAmazonOpensearchBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonOpensearchBufferMemory:ObservabilityPipelineConfigDestinationAmazonOpensearchBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3:ObservabilityPipelineConfigDestinationAmazonS3": {
            "properties": {
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3Auth:ObservabilityPipelineConfigDestinationAmazonS3Auth",
                    "description": "AWS authentication credentials used for accessing AWS services. If omitted, the system's default credentials are used (for example, the IAM role and environment variables).\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "S3 bucket name.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3Buffer:ObservabilityPipelineConfigDestinationAmazonS3Buffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "keyPrefix": {
                    "type": "string",
                    "description": "Prefix for object keys.\n"
                },
                "region": {
                    "type": "string",
                    "description": "AWS region of the S3 bucket.\n"
                },
                "storageClass": {
                    "type": "string",
                    "description": "S3 storage class. Valid values are `STANDARD`, `REDUCED_REDUNDANCY`, `INTELLIGENT_TIERING`, `STANDARD_IA`, `EXPRESS_ONEZONE`, `ONEZONE_IA`, `GLACIER`, `GLACIER_IR`, `DEEP_ARCHIVE`.\n"
                }
            },
            "type": "object",
            "required": [
                "bucket",
                "keyPrefix",
                "region",
                "storageClass"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3Auth:ObservabilityPipelineConfigDestinationAmazonS3Auth": {
            "properties": {
                "assumeRole": {
                    "type": "string",
                    "description": "The Amazon Resource Name (ARN) of the role to assume.\n"
                },
                "externalId": {
                    "type": "string",
                    "description": "A unique identifier for cross-account role assumption.\n"
                },
                "sessionName": {
                    "type": "string",
                    "description": "A session identifier used for logging and tracing the assumed role session.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3Buffer:ObservabilityPipelineConfigDestinationAmazonS3Buffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3BufferDisk:ObservabilityPipelineConfigDestinationAmazonS3BufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3BufferMemory:ObservabilityPipelineConfigDestinationAmazonS3BufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3BufferDisk:ObservabilityPipelineConfigDestinationAmazonS3BufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3BufferMemory:ObservabilityPipelineConfigDestinationAmazonS3BufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3Generic:ObservabilityPipelineConfigDestinationAmazonS3Generic": {
            "properties": {
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3GenericAuth:ObservabilityPipelineConfigDestinationAmazonS3GenericAuth",
                    "description": "AWS authentication credentials used for accessing AWS services. If omitted, the system's default credentials are used (for example, the IAM role and environment variables).\n"
                },
                "batchSettings": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3GenericBatchSettings:ObservabilityPipelineConfigDestinationAmazonS3GenericBatchSettings",
                    "description": "Event batching settings.\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "S3 bucket name.\n"
                },
                "compression": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3GenericCompression:ObservabilityPipelineConfigDestinationAmazonS3GenericCompression",
                    "description": "Compression configuration.\n"
                },
                "encoding": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonS3GenericEncoding:ObservabilityPipelineConfigDestinationAmazonS3GenericEncoding",
                    "description": "Encoding format for the destination.\n"
                },
                "keyPrefix": {
                    "type": "string",
                    "description": "Optional prefix for object keys.\n"
                },
                "region": {
                    "type": "string",
                    "description": "AWS region of the S3 bucket.\n"
                },
                "storageClass": {
                    "type": "string",
                    "description": "S3 storage class. Valid values are `STANDARD`, `REDUCED_REDUNDANCY`, `INTELLIGENT_TIERING`, `STANDARD_IA`, `EXPRESS_ONEZONE`, `ONEZONE_IA`, `GLACIER`, `GLACIER_IR`, `DEEP_ARCHIVE`.\n"
                }
            },
            "type": "object",
            "required": [
                "bucket",
                "compression",
                "encoding",
                "region",
                "storageClass"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3GenericAuth:ObservabilityPipelineConfigDestinationAmazonS3GenericAuth": {
            "properties": {
                "assumeRole": {
                    "type": "string",
                    "description": "The Amazon Resource Name (ARN) of the role to assume.\n"
                },
                "externalId": {
                    "type": "string",
                    "description": "A unique identifier for cross-account role assumption.\n"
                },
                "sessionName": {
                    "type": "string",
                    "description": "A session identifier used for logging and tracing the assumed role session.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3GenericBatchSettings:ObservabilityPipelineConfigDestinationAmazonS3GenericBatchSettings": {
            "properties": {
                "batchSize": {
                    "type": "integer",
                    "description": "Maximum batch size in bytes.\n"
                },
                "timeoutSecs": {
                    "type": "integer",
                    "description": "Maximum number of seconds to wait before flushing the batch.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3GenericCompression:ObservabilityPipelineConfigDestinationAmazonS3GenericCompression": {
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Compression algorithm. Valid values are \u003cspan pulumi-lang-nodejs=\"`gzip`\" pulumi-lang-dotnet=\"`Gzip`\" pulumi-lang-go=\"`gzip`\" pulumi-lang-python=\"`gzip`\" pulumi-lang-yaml=\"`gzip`\" pulumi-lang-java=\"`gzip`\"\u003e`gzip`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`zstd`\" pulumi-lang-dotnet=\"`Zstd`\" pulumi-lang-go=\"`zstd`\" pulumi-lang-python=\"`zstd`\" pulumi-lang-yaml=\"`zstd`\" pulumi-lang-java=\"`zstd`\"\u003e`zstd`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`snappy`\" pulumi-lang-dotnet=\"`Snappy`\" pulumi-lang-go=\"`snappy`\" pulumi-lang-python=\"`snappy`\" pulumi-lang-yaml=\"`snappy`\" pulumi-lang-java=\"`snappy`\"\u003e`snappy`\u003c/span\u003e.\n"
                },
                "level": {
                    "type": "integer",
                    "description": "Compression level.\n"
                }
            },
            "type": "object",
            "required": [
                "algorithm"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonS3GenericEncoding:ObservabilityPipelineConfigDestinationAmazonS3GenericEncoding": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "The encoding type. Valid values are \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`parquet`\" pulumi-lang-dotnet=\"`Parquet`\" pulumi-lang-go=\"`parquet`\" pulumi-lang-python=\"`parquet`\" pulumi-lang-yaml=\"`parquet`\" pulumi-lang-java=\"`parquet`\"\u003e`parquet`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLake:ObservabilityPipelineConfigDestinationAmazonSecurityLake": {
            "properties": {
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeAuth:ObservabilityPipelineConfigDestinationAmazonSecurityLakeAuth",
                    "description": "AWS authentication credentials used for accessing AWS services. If omitted, the system's default credentials are used (for example, the IAM role and environment variables).\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "Name of the Amazon S3 bucket in Security Lake (3-63 characters).\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeBuffer:ObservabilityPipelineConfigDestinationAmazonSecurityLakeBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "customSourceName": {
                    "type": "string",
                    "description": "Custom source name for the logs in Security Lake.\n"
                },
                "region": {
                    "type": "string",
                    "description": "AWS region of the Security Lake bucket.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeTls:ObservabilityPipelineConfigDestinationAmazonSecurityLakeTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object",
            "required": [
                "bucket",
                "customSourceName",
                "region"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeAuth:ObservabilityPipelineConfigDestinationAmazonSecurityLakeAuth": {
            "properties": {
                "assumeRole": {
                    "type": "string",
                    "description": "The Amazon Resource Name (ARN) of the role to assume.\n"
                },
                "externalId": {
                    "type": "string",
                    "description": "A unique identifier for cross-account role assumption.\n"
                },
                "sessionName": {
                    "type": "string",
                    "description": "A session identifier used for logging and tracing the assumed role session.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeBuffer:ObservabilityPipelineConfigDestinationAmazonSecurityLakeBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeBufferDisk:ObservabilityPipelineConfigDestinationAmazonSecurityLakeBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeBufferMemory:ObservabilityPipelineConfigDestinationAmazonSecurityLakeBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeBufferDisk:ObservabilityPipelineConfigDestinationAmazonSecurityLakeBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeBufferMemory:ObservabilityPipelineConfigDestinationAmazonSecurityLakeBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAmazonSecurityLakeTls:ObservabilityPipelineConfigDestinationAmazonSecurityLakeTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAzureStorage:ObservabilityPipelineConfigDestinationAzureStorage": {
            "properties": {
                "blobPrefix": {
                    "type": "string",
                    "description": "Optional prefix for blobs written to the container.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAzureStorageBuffer:ObservabilityPipelineConfigDestinationAzureStorageBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "containerName": {
                    "type": "string",
                    "description": "The name of the Azure Blob Storage container to store logs in.\n"
                }
            },
            "type": "object",
            "required": [
                "containerName"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAzureStorageBuffer:ObservabilityPipelineConfigDestinationAzureStorageBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAzureStorageBufferDisk:ObservabilityPipelineConfigDestinationAzureStorageBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationAzureStorageBufferMemory:ObservabilityPipelineConfigDestinationAzureStorageBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAzureStorageBufferDisk:ObservabilityPipelineConfigDestinationAzureStorageBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationAzureStorageBufferMemory:ObservabilityPipelineConfigDestinationAzureStorageBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationCloudPrem:ObservabilityPipelineConfigDestinationCloudPrem": {
            "properties": {
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the endpoint URL.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiem:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiem": {
            "properties": {
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBuffer:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "compression": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemCompression:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemCompression",
                    "description": "Compression configuration for log events.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "Encoding format for log events. Valid values are \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rawMessage`\" pulumi-lang-dotnet=\"`RawMessage`\" pulumi-lang-go=\"`rawMessage`\" pulumi-lang-python=\"`raw_message`\" pulumi-lang-yaml=\"`rawMessage`\" pulumi-lang-java=\"`rawMessage`\"\u003e`rawMessage`\u003c/span\u003e.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the endpoint URL.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemTls:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                },
                "tokenKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the authentication token.\n"
                }
            },
            "type": "object",
            "required": [
                "encoding"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBuffer:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBufferDisk:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBufferMemory:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBufferDisk:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBufferMemory:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemCompression:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemCompression": {
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Compression algorithm for log events.\n"
                },
                "level": {
                    "type": "integer",
                    "description": "Compression level.\n"
                }
            },
            "type": "object",
            "required": [
                "algorithm"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemTls:ObservabilityPipelineConfigDestinationCrowdstrikeNextGenSiemTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogLog:ObservabilityPipelineConfigDestinationDatadogLog": {
            "properties": {
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogLogBuffer:ObservabilityPipelineConfigDestinationDatadogLogBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "routes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogLogRoute:ObservabilityPipelineConfigDestinationDatadogLogRoute"
                    },
                    "description": "A list of routing rules that forward matching logs to Datadog using dedicated API keys.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogLogBuffer:ObservabilityPipelineConfigDestinationDatadogLogBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogLogBufferDisk:ObservabilityPipelineConfigDestinationDatadogLogBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogLogBufferMemory:ObservabilityPipelineConfigDestinationDatadogLogBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogLogBufferDisk:ObservabilityPipelineConfigDestinationDatadogLogBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogLogBufferMemory:ObservabilityPipelineConfigDestinationDatadogLogBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogLogRoute:ObservabilityPipelineConfigDestinationDatadogLogRoute": {
            "properties": {
                "apiKeyKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that stores the Datadog API key used by this route.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogLogRouteBuffer:ObservabilityPipelineConfigDestinationDatadogLogRouteBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "include": {
                    "type": "string",
                    "description": "A Datadog search query that determines which logs are forwarded using this route.\n"
                },
                "routeId": {
                    "type": "string",
                    "description": "Unique identifier for this route within the destination.\n"
                },
                "site": {
                    "type": "string",
                    "description": "Datadog site where matching logs are sent (for example, \u003cspan pulumi-lang-nodejs=\"`us1`\" pulumi-lang-dotnet=\"`Us1`\" pulumi-lang-go=\"`us1`\" pulumi-lang-python=\"`us1`\" pulumi-lang-yaml=\"`us1`\" pulumi-lang-java=\"`us1`\"\u003e`us1`\u003c/span\u003e).\n"
                }
            },
            "type": "object",
            "required": [
                "apiKeyKey",
                "include",
                "routeId",
                "site"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogLogRouteBuffer:ObservabilityPipelineConfigDestinationDatadogLogRouteBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogLogRouteBufferDisk:ObservabilityPipelineConfigDestinationDatadogLogRouteBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationDatadogLogRouteBufferMemory:ObservabilityPipelineConfigDestinationDatadogLogRouteBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogLogRouteBufferDisk:ObservabilityPipelineConfigDestinationDatadogLogRouteBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogLogRouteBufferMemory:ObservabilityPipelineConfigDestinationDatadogLogRouteBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationDatadogMetric:ObservabilityPipelineConfigDestinationDatadogMetric": {
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationElasticsearch:ObservabilityPipelineConfigDestinationElasticsearch": {
            "properties": {
                "apiVersion": {
                    "type": "string",
                    "description": "The Elasticsearch API version to use. Set to \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e to auto-detect.\n"
                },
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationElasticsearchAuth:ObservabilityPipelineConfigDestinationElasticsearchAuth",
                    "description": "Authentication settings for the Elasticsearch destination.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationElasticsearchBuffer:ObservabilityPipelineConfigDestinationElasticsearchBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "bulkIndex": {
                    "type": "string",
                    "description": "The index or datastream to write logs to in Elasticsearch.\n"
                },
                "dataStream": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationElasticsearchDataStream:ObservabilityPipelineConfigDestinationElasticsearchDataStream",
                    "description": "Configuration options for writing to Elasticsearch Data Streams instead of a fixed index.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Elasticsearch endpoint URL.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationElasticsearchAuth:ObservabilityPipelineConfigDestinationElasticsearchAuth": {
            "properties": {
                "passwordKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Elasticsearch password (used when strategy is \u003cspan pulumi-lang-nodejs=\"`basic`\" pulumi-lang-dotnet=\"`Basic`\" pulumi-lang-go=\"`basic`\" pulumi-lang-python=\"`basic`\" pulumi-lang-yaml=\"`basic`\" pulumi-lang-java=\"`basic`\"\u003e`basic`\u003c/span\u003e).\n"
                },
                "strategy": {
                    "type": "string",
                    "description": "The authentication strategy. Use \u003cspan pulumi-lang-nodejs=\"`basic`\" pulumi-lang-dotnet=\"`Basic`\" pulumi-lang-go=\"`basic`\" pulumi-lang-python=\"`basic`\" pulumi-lang-yaml=\"`basic`\" pulumi-lang-java=\"`basic`\"\u003e`basic`\u003c/span\u003e for username/password. Valid values are \u003cspan pulumi-lang-nodejs=\"`basic`\" pulumi-lang-dotnet=\"`Basic`\" pulumi-lang-go=\"`basic`\" pulumi-lang-python=\"`basic`\" pulumi-lang-yaml=\"`basic`\" pulumi-lang-java=\"`basic`\"\u003e`basic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"
                },
                "usernameKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Elasticsearch username (used when strategy is \u003cspan pulumi-lang-nodejs=\"`basic`\" pulumi-lang-dotnet=\"`Basic`\" pulumi-lang-go=\"`basic`\" pulumi-lang-python=\"`basic`\" pulumi-lang-yaml=\"`basic`\" pulumi-lang-java=\"`basic`\"\u003e`basic`\u003c/span\u003e).\n"
                }
            },
            "type": "object",
            "required": [
                "strategy"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationElasticsearchBuffer:ObservabilityPipelineConfigDestinationElasticsearchBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationElasticsearchBufferDisk:ObservabilityPipelineConfigDestinationElasticsearchBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationElasticsearchBufferMemory:ObservabilityPipelineConfigDestinationElasticsearchBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationElasticsearchBufferDisk:ObservabilityPipelineConfigDestinationElasticsearchBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationElasticsearchBufferMemory:ObservabilityPipelineConfigDestinationElasticsearchBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationElasticsearchDataStream:ObservabilityPipelineConfigDestinationElasticsearchDataStream": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "The data stream dataset for your logs. This groups logs by their source or application.\n"
                },
                "dtype": {
                    "type": "string",
                    "description": "The data stream type for your logs. This determines how logs are categorized within the data stream.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "The data stream namespace for your logs. This separates logs into different environments or domains.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorage:ObservabilityPipelineConfigDestinationGoogleCloudStorage": {
            "properties": {
                "acl": {
                    "type": "string",
                    "description": "Access control list setting for objects written to the bucket.\n"
                },
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageAuth:ObservabilityPipelineConfigDestinationGoogleCloudStorageAuth",
                    "description": "Google Cloud credentials used to authenticate with Google Cloud services.\n"
                },
                "bucket": {
                    "type": "string",
                    "description": "Name of the GCS bucket.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageBuffer:ObservabilityPipelineConfigDestinationGoogleCloudStorageBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "keyPrefix": {
                    "type": "string",
                    "description": "Optional prefix for object keys within the GCS bucket.\n"
                },
                "metadatas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageMetadata:ObservabilityPipelineConfigDestinationGoogleCloudStorageMetadata"
                    },
                    "description": "Custom metadata key-value pairs added to each object.\n"
                },
                "storageClass": {
                    "type": "string",
                    "description": "Storage class used for objects stored in GCS.\n"
                }
            },
            "type": "object",
            "required": [
                "bucket",
                "storageClass"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageAuth:ObservabilityPipelineConfigDestinationGoogleCloudStorageAuth": {
            "properties": {
                "credentialsFile": {
                    "type": "string",
                    "description": "Path to the Google Cloud service account key file.\n"
                }
            },
            "type": "object",
            "required": [
                "credentialsFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageBuffer:ObservabilityPipelineConfigDestinationGoogleCloudStorageBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageBufferDisk:ObservabilityPipelineConfigDestinationGoogleCloudStorageBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageBufferMemory:ObservabilityPipelineConfigDestinationGoogleCloudStorageBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageBufferDisk:ObservabilityPipelineConfigDestinationGoogleCloudStorageBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageBufferMemory:ObservabilityPipelineConfigDestinationGoogleCloudStorageBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleCloudStorageMetadata:ObservabilityPipelineConfigDestinationGoogleCloudStorageMetadata": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The metadata key.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The metadata value.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGooglePubsub:ObservabilityPipelineConfigDestinationGooglePubsub": {
            "properties": {
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubAuth:ObservabilityPipelineConfigDestinationGooglePubsubAuth",
                    "description": "Google Cloud credentials used to authenticate with Google Cloud services.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubBuffer:ObservabilityPipelineConfigDestinationGooglePubsubBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "Encoding format for log events. Valid values: \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rawMessage`\" pulumi-lang-dotnet=\"`RawMessage`\" pulumi-lang-go=\"`rawMessage`\" pulumi-lang-python=\"`raw_message`\" pulumi-lang-yaml=\"`rawMessage`\" pulumi-lang-java=\"`rawMessage`\"\u003e`rawMessage`\u003c/span\u003e.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Google Cloud Pub/Sub endpoint URL.\n"
                },
                "project": {
                    "type": "string",
                    "description": "The Google Cloud project ID that owns the Pub/Sub topic.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubTls:ObservabilityPipelineConfigDestinationGooglePubsubTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                },
                "topic": {
                    "type": "string",
                    "description": "The Pub/Sub topic name to publish logs to.\n"
                }
            },
            "type": "object",
            "required": [
                "encoding",
                "project",
                "topic"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubAuth:ObservabilityPipelineConfigDestinationGooglePubsubAuth": {
            "properties": {
                "credentialsFile": {
                    "type": "string",
                    "description": "Path to the Google Cloud service account key file.\n"
                }
            },
            "type": "object",
            "required": [
                "credentialsFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubBuffer:ObservabilityPipelineConfigDestinationGooglePubsubBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubBufferDisk:ObservabilityPipelineConfigDestinationGooglePubsubBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubBufferMemory:ObservabilityPipelineConfigDestinationGooglePubsubBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubBufferDisk:ObservabilityPipelineConfigDestinationGooglePubsubBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubBufferMemory:ObservabilityPipelineConfigDestinationGooglePubsubBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGooglePubsubTls:ObservabilityPipelineConfigDestinationGooglePubsubTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleSecop:ObservabilityPipelineConfigDestinationGoogleSecop": {
            "properties": {
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleSecopAuth:ObservabilityPipelineConfigDestinationGoogleSecopAuth",
                    "description": "Google Cloud credentials used to authenticate with Google Cloud services.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleSecopBuffer:ObservabilityPipelineConfigDestinationGoogleSecopBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "customerId": {
                    "type": "string",
                    "description": "The Google SecOps customer ID.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "The encoding format for the logs sent to Google SecOps. Valid values are \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rawMessage`\" pulumi-lang-dotnet=\"`RawMessage`\" pulumi-lang-go=\"`rawMessage`\" pulumi-lang-python=\"`raw_message`\" pulumi-lang-yaml=\"`rawMessage`\" pulumi-lang-java=\"`rawMessage`\"\u003e`rawMessage`\u003c/span\u003e.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Google Chronicle endpoint URL.\n"
                },
                "logType": {
                    "type": "string",
                    "description": "The log type metadata associated with the Google SecOps destination.\n"
                }
            },
            "type": "object",
            "required": [
                "customerId",
                "encoding",
                "logType"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleSecopAuth:ObservabilityPipelineConfigDestinationGoogleSecopAuth": {
            "properties": {
                "credentialsFile": {
                    "type": "string",
                    "description": "Path to the Google Cloud service account key file.\n"
                }
            },
            "type": "object",
            "required": [
                "credentialsFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleSecopBuffer:ObservabilityPipelineConfigDestinationGoogleSecopBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleSecopBufferDisk:ObservabilityPipelineConfigDestinationGoogleSecopBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationGoogleSecopBufferMemory:ObservabilityPipelineConfigDestinationGoogleSecopBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleSecopBufferDisk:ObservabilityPipelineConfigDestinationGoogleSecopBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationGoogleSecopBufferMemory:ObservabilityPipelineConfigDestinationGoogleSecopBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationHttpClient:ObservabilityPipelineConfigDestinationHttpClient": {
            "properties": {
                "authStrategy": {
                    "type": "string",
                    "description": "HTTP authentication strategy. Valid values are \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`basic`\" pulumi-lang-dotnet=\"`Basic`\" pulumi-lang-go=\"`basic`\" pulumi-lang-python=\"`basic`\" pulumi-lang-yaml=\"`basic`\" pulumi-lang-java=\"`basic`\"\u003e`basic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bearer`\" pulumi-lang-dotnet=\"`Bearer`\" pulumi-lang-go=\"`bearer`\" pulumi-lang-python=\"`bearer`\" pulumi-lang-yaml=\"`bearer`\" pulumi-lang-java=\"`bearer`\"\u003e`bearer`\u003c/span\u003e.\n"
                },
                "compression": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationHttpClientCompression:ObservabilityPipelineConfigDestinationHttpClientCompression",
                    "description": "Compression configuration for HTTP requests.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "Encoding format for events. Valid values are \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e.\n"
                },
                "passwordKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the password.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationHttpClientTls:ObservabilityPipelineConfigDestinationHttpClientTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                },
                "tokenKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the authentication token.\n"
                },
                "uriKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the request URI.\n"
                },
                "usernameKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the username.\n"
                }
            },
            "type": "object",
            "required": [
                "encoding"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationHttpClientCompression:ObservabilityPipelineConfigDestinationHttpClientCompression": {
            "properties": {
                "algorithm": {
                    "type": "string",
                    "description": "Compression algorithm. Valid values are \u003cspan pulumi-lang-nodejs=\"`gzip`\" pulumi-lang-dotnet=\"`Gzip`\" pulumi-lang-go=\"`gzip`\" pulumi-lang-python=\"`gzip`\" pulumi-lang-yaml=\"`gzip`\" pulumi-lang-java=\"`gzip`\"\u003e`gzip`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "algorithm"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationHttpClientTls:ObservabilityPipelineConfigDestinationHttpClientTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationKafka:ObservabilityPipelineConfigDestinationKafka": {
            "properties": {
                "bootstrapServersKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Kafka bootstrap servers.\n"
                },
                "compression": {
                    "type": "string",
                    "description": "Compression codec for Kafka messages. Valid values are \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gzip`\" pulumi-lang-dotnet=\"`Gzip`\" pulumi-lang-go=\"`gzip`\" pulumi-lang-python=\"`gzip`\" pulumi-lang-yaml=\"`gzip`\" pulumi-lang-java=\"`gzip`\"\u003e`gzip`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`snappy`\" pulumi-lang-dotnet=\"`Snappy`\" pulumi-lang-go=\"`snappy`\" pulumi-lang-python=\"`snappy`\" pulumi-lang-yaml=\"`snappy`\" pulumi-lang-java=\"`snappy`\"\u003e`snappy`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lz4`\" pulumi-lang-dotnet=\"`Lz4`\" pulumi-lang-go=\"`lz4`\" pulumi-lang-python=\"`lz4`\" pulumi-lang-yaml=\"`lz4`\" pulumi-lang-java=\"`lz4`\"\u003e`lz4`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`zstd`\" pulumi-lang-dotnet=\"`Zstd`\" pulumi-lang-go=\"`zstd`\" pulumi-lang-python=\"`zstd`\" pulumi-lang-yaml=\"`zstd`\" pulumi-lang-java=\"`zstd`\"\u003e`zstd`\u003c/span\u003e.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "Encoding format for log events. Valid values are \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rawMessage`\" pulumi-lang-dotnet=\"`RawMessage`\" pulumi-lang-go=\"`rawMessage`\" pulumi-lang-python=\"`raw_message`\" pulumi-lang-yaml=\"`rawMessage`\" pulumi-lang-java=\"`rawMessage`\"\u003e`rawMessage`\u003c/span\u003e.\n"
                },
                "headersKey": {
                    "type": "string",
                    "description": "The field name to use for Kafka message headers.\n"
                },
                "keyField": {
                    "type": "string",
                    "description": "The field name to use as the Kafka message key.\n"
                },
                "librdkafkaOptions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationKafkaLibrdkafkaOption:ObservabilityPipelineConfigDestinationKafkaLibrdkafkaOption"
                    },
                    "description": "Optional list of advanced Kafka producer configuration options, defined as key-value pairs.\n"
                },
                "messageTimeoutMs": {
                    "type": "integer",
                    "description": "Maximum time in milliseconds to wait for message delivery confirmation.\n"
                },
                "rateLimitDurationSecs": {
                    "type": "integer",
                    "description": "Duration in seconds for the rate limit window.\n"
                },
                "rateLimitNum": {
                    "type": "integer",
                    "description": "Maximum number of messages allowed per rate limit duration.\n"
                },
                "sasl": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationKafkaSasl:ObservabilityPipelineConfigDestinationKafkaSasl",
                    "description": "Specifies the SASL mechanism for authenticating with a Kafka cluster.\n"
                },
                "socketTimeoutMs": {
                    "type": "integer",
                    "description": "Socket timeout in milliseconds for network requests.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationKafkaTls:ObservabilityPipelineConfigDestinationKafkaTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                },
                "topic": {
                    "type": "string",
                    "description": "The Kafka topic name to publish logs to.\n"
                }
            },
            "type": "object",
            "required": [
                "encoding",
                "topic"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationKafkaLibrdkafkaOption:ObservabilityPipelineConfigDestinationKafkaLibrdkafkaOption": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the librdkafka configuration option.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value of the librdkafka configuration option.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationKafkaSasl:ObservabilityPipelineConfigDestinationKafkaSasl": {
            "properties": {
                "mechanism": {
                    "type": "string",
                    "description": "SASL authentication mechanism. Valid values are `PLAIN`, `SCRAM-SHA-256`, `SCRAM-SHA-512`.\n"
                },
                "passwordKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the SASL password.\n"
                },
                "usernameKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the SASL username.\n"
                }
            },
            "type": "object",
            "required": [
                "mechanism"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationKafkaTls:ObservabilityPipelineConfigDestinationKafkaTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationMicrosoftSentinel:ObservabilityPipelineConfigDestinationMicrosoftSentinel": {
            "properties": {
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationMicrosoftSentinelBuffer:ObservabilityPipelineConfigDestinationMicrosoftSentinelBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Azure AD client ID used for authentication.\n"
                },
                "clientSecretKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Azure AD client secret.\n"
                },
                "dceUriKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Data Collection Endpoint (DCE) URI.\n"
                },
                "dcrImmutableId": {
                    "type": "string",
                    "description": "The immutable ID of the Data Collection Rule (DCR).\n"
                },
                "table": {
                    "type": "string",
                    "description": "The name of the Log Analytics table where logs will be sent.\n"
                },
                "tenantId": {
                    "type": "string",
                    "description": "Azure AD tenant ID.\n"
                }
            },
            "type": "object",
            "required": [
                "clientId",
                "dcrImmutableId",
                "table",
                "tenantId"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationMicrosoftSentinelBuffer:ObservabilityPipelineConfigDestinationMicrosoftSentinelBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationMicrosoftSentinelBufferDisk:ObservabilityPipelineConfigDestinationMicrosoftSentinelBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationMicrosoftSentinelBufferMemory:ObservabilityPipelineConfigDestinationMicrosoftSentinelBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationMicrosoftSentinelBufferDisk:ObservabilityPipelineConfigDestinationMicrosoftSentinelBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationMicrosoftSentinelBufferMemory:ObservabilityPipelineConfigDestinationMicrosoftSentinelBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationNewRelic:ObservabilityPipelineConfigDestinationNewRelic": {
            "properties": {
                "accountIdKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the New Relic account ID.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationNewRelicBuffer:ObservabilityPipelineConfigDestinationNewRelicBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "licenseKeyKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the New Relic license key.\n"
                },
                "region": {
                    "type": "string",
                    "description": "The New Relic region.\n"
                }
            },
            "type": "object",
            "required": [
                "region"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationNewRelicBuffer:ObservabilityPipelineConfigDestinationNewRelicBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationNewRelicBufferDisk:ObservabilityPipelineConfigDestinationNewRelicBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationNewRelicBufferMemory:ObservabilityPipelineConfigDestinationNewRelicBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationNewRelicBufferDisk:ObservabilityPipelineConfigDestinationNewRelicBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationNewRelicBufferMemory:ObservabilityPipelineConfigDestinationNewRelicBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationOpensearch:ObservabilityPipelineConfigDestinationOpensearch": {
            "properties": {
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationOpensearchBuffer:ObservabilityPipelineConfigDestinationOpensearchBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "bulkIndex": {
                    "type": "string",
                    "description": "The index or datastream to write logs to.\n"
                },
                "dataStream": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationOpensearchDataStream:ObservabilityPipelineConfigDestinationOpensearchDataStream",
                    "description": "Configuration options for writing to OpenSearch Data Streams instead of a fixed index.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationOpensearchBuffer:ObservabilityPipelineConfigDestinationOpensearchBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationOpensearchBufferDisk:ObservabilityPipelineConfigDestinationOpensearchBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationOpensearchBufferMemory:ObservabilityPipelineConfigDestinationOpensearchBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationOpensearchBufferDisk:ObservabilityPipelineConfigDestinationOpensearchBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationOpensearchBufferMemory:ObservabilityPipelineConfigDestinationOpensearchBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationOpensearchDataStream:ObservabilityPipelineConfigDestinationOpensearchDataStream": {
            "properties": {
                "dataset": {
                    "type": "string",
                    "description": "The data stream dataset for your logs. This groups logs by their source or application.\n"
                },
                "dtype": {
                    "type": "string",
                    "description": "The data stream type for your logs. This determines how logs are categorized within the data stream.\n"
                },
                "namespace": {
                    "type": "string",
                    "description": "The data stream namespace for your logs. This separates logs into different environments or domains.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationRsyslog:ObservabilityPipelineConfigDestinationRsyslog": {
            "properties": {
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationRsyslogBuffer:ObservabilityPipelineConfigDestinationRsyslogBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the rsyslog endpoint URL.\n"
                },
                "keepalive": {
                    "type": "integer",
                    "description": "Optional socket keepalive duration in milliseconds.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationRsyslogTls:ObservabilityPipelineConfigDestinationRsyslogTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationRsyslogBuffer:ObservabilityPipelineConfigDestinationRsyslogBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationRsyslogBufferDisk:ObservabilityPipelineConfigDestinationRsyslogBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationRsyslogBufferMemory:ObservabilityPipelineConfigDestinationRsyslogBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationRsyslogBufferDisk:ObservabilityPipelineConfigDestinationRsyslogBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationRsyslogBufferMemory:ObservabilityPipelineConfigDestinationRsyslogBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationRsyslogTls:ObservabilityPipelineConfigDestinationRsyslogTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSentinelOne:ObservabilityPipelineConfigDestinationSentinelOne": {
            "properties": {
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSentinelOneBuffer:ObservabilityPipelineConfigDestinationSentinelOneBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "region": {
                    "type": "string",
                    "description": "The SentinelOne region to send logs to.\n"
                },
                "tokenKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the SentinelOne API token.\n"
                }
            },
            "type": "object",
            "required": [
                "region"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSentinelOneBuffer:ObservabilityPipelineConfigDestinationSentinelOneBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSentinelOneBufferDisk:ObservabilityPipelineConfigDestinationSentinelOneBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSentinelOneBufferMemory:ObservabilityPipelineConfigDestinationSentinelOneBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSentinelOneBufferDisk:ObservabilityPipelineConfigDestinationSentinelOneBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSentinelOneBufferMemory:ObservabilityPipelineConfigDestinationSentinelOneBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSocket:ObservabilityPipelineConfigDestinationSocket": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the socket address (host:port).\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSocketBuffer:ObservabilityPipelineConfigDestinationSocketBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "Encoding format for log events. Valid values are \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rawMessage`\" pulumi-lang-dotnet=\"`RawMessage`\" pulumi-lang-go=\"`rawMessage`\" pulumi-lang-python=\"`raw_message`\" pulumi-lang-yaml=\"`rawMessage`\" pulumi-lang-java=\"`rawMessage`\"\u003e`rawMessage`\u003c/span\u003e.\n"
                },
                "framing": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSocketFraming:ObservabilityPipelineConfigDestinationSocketFraming",
                    "description": "Defines the framing method for outgoing messages.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The protocol used to send logs. Valid values are \u003cspan pulumi-lang-nodejs=\"`tcp`\" pulumi-lang-dotnet=\"`Tcp`\" pulumi-lang-go=\"`tcp`\" pulumi-lang-python=\"`tcp`\" pulumi-lang-yaml=\"`tcp`\" pulumi-lang-java=\"`tcp`\"\u003e`tcp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`udp`\" pulumi-lang-dotnet=\"`Udp`\" pulumi-lang-go=\"`udp`\" pulumi-lang-python=\"`udp`\" pulumi-lang-yaml=\"`udp`\" pulumi-lang-java=\"`udp`\"\u003e`udp`\u003c/span\u003e.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSocketTls:ObservabilityPipelineConfigDestinationSocketTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object",
            "required": [
                "encoding",
                "framing",
                "mode"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSocketBuffer:ObservabilityPipelineConfigDestinationSocketBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSocketBufferDisk:ObservabilityPipelineConfigDestinationSocketBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSocketBufferMemory:ObservabilityPipelineConfigDestinationSocketBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSocketBufferDisk:ObservabilityPipelineConfigDestinationSocketBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSocketBufferMemory:ObservabilityPipelineConfigDestinationSocketBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSocketFraming:ObservabilityPipelineConfigDestinationSocketFraming": {
            "properties": {
                "characterDelimited": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSocketFramingCharacterDelimited:ObservabilityPipelineConfigDestinationSocketFramingCharacterDelimited",
                    "description": "Used when \u003cspan pulumi-lang-nodejs=\"`method`\" pulumi-lang-dotnet=\"`Method`\" pulumi-lang-go=\"`method`\" pulumi-lang-python=\"`method`\" pulumi-lang-yaml=\"`method`\" pulumi-lang-java=\"`method`\"\u003e`method`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`characterDelimited`\" pulumi-lang-dotnet=\"`CharacterDelimited`\" pulumi-lang-go=\"`characterDelimited`\" pulumi-lang-python=\"`character_delimited`\" pulumi-lang-yaml=\"`characterDelimited`\" pulumi-lang-java=\"`characterDelimited`\"\u003e`characterDelimited`\u003c/span\u003e. Specifies the delimiter character.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The framing method. Valid values are \u003cspan pulumi-lang-nodejs=\"`newlineDelimited`\" pulumi-lang-dotnet=\"`NewlineDelimited`\" pulumi-lang-go=\"`newlineDelimited`\" pulumi-lang-python=\"`newline_delimited`\" pulumi-lang-yaml=\"`newlineDelimited`\" pulumi-lang-java=\"`newlineDelimited`\"\u003e`newlineDelimited`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bytes`\" pulumi-lang-dotnet=\"`Bytes`\" pulumi-lang-go=\"`bytes`\" pulumi-lang-python=\"`bytes`\" pulumi-lang-yaml=\"`bytes`\" pulumi-lang-java=\"`bytes`\"\u003e`bytes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`characterDelimited`\" pulumi-lang-dotnet=\"`CharacterDelimited`\" pulumi-lang-go=\"`characterDelimited`\" pulumi-lang-python=\"`character_delimited`\" pulumi-lang-yaml=\"`characterDelimited`\" pulumi-lang-java=\"`characterDelimited`\"\u003e`characterDelimited`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "method"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSocketFramingCharacterDelimited:ObservabilityPipelineConfigDestinationSocketFramingCharacterDelimited": {
            "properties": {
                "delimiter": {
                    "type": "string",
                    "description": "A single ASCII character used as a delimiter.\n"
                }
            },
            "type": "object",
            "required": [
                "delimiter"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSocketTls:ObservabilityPipelineConfigDestinationSocketTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSplunkHec:ObservabilityPipelineConfigDestinationSplunkHec": {
            "properties": {
                "autoExtractTimestamp": {
                    "type": "boolean",
                    "description": "If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, Splunk tries to extract timestamps from incoming log events.\n"
                },
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSplunkHecBuffer:ObservabilityPipelineConfigDestinationSplunkHecBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "Encoding format for log events. Valid values are \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rawMessage`\" pulumi-lang-dotnet=\"`RawMessage`\" pulumi-lang-go=\"`rawMessage`\" pulumi-lang-python=\"`raw_message`\" pulumi-lang-yaml=\"`rawMessage`\" pulumi-lang-java=\"`rawMessage`\"\u003e`rawMessage`\u003c/span\u003e.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Splunk HEC endpoint URL.\n"
                },
                "index": {
                    "type": "string",
                    "description": "Optional name of the Splunk index where logs are written.\n"
                },
                "indexedFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of log field names to send as indexed fields to Splunk HEC. Available only when \u003cspan pulumi-lang-nodejs=\"`encoding`\" pulumi-lang-dotnet=\"`Encoding`\" pulumi-lang-go=\"`encoding`\" pulumi-lang-python=\"`encoding`\" pulumi-lang-yaml=\"`encoding`\" pulumi-lang-java=\"`encoding`\"\u003e`encoding`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e.\n"
                },
                "sourcetype": {
                    "type": "string",
                    "description": "The Splunk sourcetype to assign to log events.\n"
                },
                "tokenKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Splunk HEC token.\n"
                }
            },
            "type": "object",
            "required": [
                "encoding"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSplunkHecBuffer:ObservabilityPipelineConfigDestinationSplunkHecBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSplunkHecBufferDisk:ObservabilityPipelineConfigDestinationSplunkHecBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSplunkHecBufferMemory:ObservabilityPipelineConfigDestinationSplunkHecBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSplunkHecBufferDisk:ObservabilityPipelineConfigDestinationSplunkHecBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSplunkHecBufferMemory:ObservabilityPipelineConfigDestinationSplunkHecBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSumoLogic:ObservabilityPipelineConfigDestinationSumoLogic": {
            "properties": {
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSumoLogicBuffer:ObservabilityPipelineConfigDestinationSumoLogicBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "The output encoding format.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Sumo Logic endpoint URL.\n"
                },
                "headerCustomFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSumoLogicHeaderCustomField:ObservabilityPipelineConfigDestinationSumoLogicHeaderCustomField"
                    },
                    "description": "A list of custom headers to include in the request to Sumo Logic.\n"
                },
                "headerHostName": {
                    "type": "string",
                    "description": "Optional override for the host name header.\n"
                },
                "headerSourceCategory": {
                    "type": "string",
                    "description": "Optional override for the source category header.\n"
                },
                "headerSourceName": {
                    "type": "string",
                    "description": "Optional override for the source name header.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSumoLogicBuffer:ObservabilityPipelineConfigDestinationSumoLogicBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSumoLogicBufferDisk:ObservabilityPipelineConfigDestinationSumoLogicBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSumoLogicBufferMemory:ObservabilityPipelineConfigDestinationSumoLogicBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSumoLogicBufferDisk:ObservabilityPipelineConfigDestinationSumoLogicBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSumoLogicBufferMemory:ObservabilityPipelineConfigDestinationSumoLogicBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSumoLogicHeaderCustomField:ObservabilityPipelineConfigDestinationSumoLogicHeaderCustomField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The header field name.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The header field value.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSyslogNg:ObservabilityPipelineConfigDestinationSyslogNg": {
            "properties": {
                "buffer": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSyslogNgBuffer:ObservabilityPipelineConfigDestinationSyslogNgBuffer",
                    "description": "Configuration for buffer settings on destination components. Exactly one of \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e must be specified.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the syslog-ng endpoint URL.\n"
                },
                "keepalive": {
                    "type": "integer",
                    "description": "Optional socket keepalive duration in milliseconds.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSyslogNgTls:ObservabilityPipelineConfigDestinationSyslogNgTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSyslogNgBuffer:ObservabilityPipelineConfigDestinationSyslogNgBuffer": {
            "properties": {
                "disk": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSyslogNgBufferDisk:ObservabilityPipelineConfigDestinationSyslogNgBufferDisk",
                    "description": "Options for configuring a disk buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e.\n"
                },
                "memory": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigDestinationSyslogNgBufferMemory:ObservabilityPipelineConfigDestinationSyslogNgBufferMemory",
                    "description": "Options for configuring a memory buffer. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSyslogNgBufferDisk:ObservabilityPipelineConfigDestinationSyslogNgBufferDisk": {
            "properties": {
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the disk buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSyslogNgBufferMemory:ObservabilityPipelineConfigDestinationSyslogNgBufferMemory": {
            "properties": {
                "maxEvents": {
                    "type": "integer",
                    "description": "Maximum events for the memory buffer.\n"
                },
                "maxSize": {
                    "type": "integer",
                    "description": "Maximum size of the memory buffer (in bytes).\n"
                },
                "whenFull": {
                    "type": "string",
                    "description": "Behavior when the buffer is full. Valid values are \u003cspan pulumi-lang-nodejs=\"`block`\" pulumi-lang-dotnet=\"`Block`\" pulumi-lang-go=\"`block`\" pulumi-lang-python=\"`block`\" pulumi-lang-yaml=\"`block`\" pulumi-lang-java=\"`block`\"\u003e`block`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`dropNewest`\" pulumi-lang-dotnet=\"`DropNewest`\" pulumi-lang-go=\"`dropNewest`\" pulumi-lang-python=\"`drop_newest`\" pulumi-lang-yaml=\"`dropNewest`\" pulumi-lang-java=\"`dropNewest`\"\u003e`dropNewest`\u003c/span\u003e. Defaults to `\"block\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "whenFull"
                    ]
                }
            }
        },
        "datadog:index/ObservabilityPipelineConfigDestinationSyslogNgTls:ObservabilityPipelineConfigDestinationSyslogNgTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroup:ObservabilityPipelineConfigProcessorGroup": {
            "properties": {
                "displayName": {
                    "type": "string",
                    "description": "A human-friendly name of the processor group.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether this processor group is enabled.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique ID of the processor group.\n"
                },
                "include": {
                    "type": "string",
                    "description": "A Datadog search query used to determine which logs this processor group targets.\n"
                },
                "inputs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of component IDs whose output is used as the input for this processor group.\n"
                },
                "processors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessor:ObservabilityPipelineConfigProcessorGroupProcessor"
                    },
                    "description": "The processor contained in this group.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id",
                "include",
                "inputs"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessor:ObservabilityPipelineConfigProcessorGroupProcessor": {
            "properties": {
                "addEnvVars": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddEnvVars:ObservabilityPipelineConfigProcessorGroupProcessorAddEnvVars",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`addEnvVars`\" pulumi-lang-dotnet=\"`AddEnvVars`\" pulumi-lang-go=\"`addEnvVars`\" pulumi-lang-python=\"`add_env_vars`\" pulumi-lang-yaml=\"`addEnvVars`\" pulumi-lang-java=\"`addEnvVars`\"\u003e`addEnvVars`\u003c/span\u003e processor adds environment variable values to log events.\n"
                },
                "addFields": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddFields:ObservabilityPipelineConfigProcessorGroupProcessorAddFields",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`addFields`\" pulumi-lang-dotnet=\"`AddFields`\" pulumi-lang-go=\"`addFields`\" pulumi-lang-python=\"`add_fields`\" pulumi-lang-yaml=\"`addFields`\" pulumi-lang-java=\"`addFields`\"\u003e`addFields`\u003c/span\u003e processor adds static key-value fields to logs.\n"
                },
                "addHostname": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddHostname:ObservabilityPipelineConfigProcessorGroupProcessorAddHostname",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`addHostname`\" pulumi-lang-dotnet=\"`AddHostname`\" pulumi-lang-go=\"`addHostname`\" pulumi-lang-python=\"`add_hostname`\" pulumi-lang-yaml=\"`addHostname`\" pulumi-lang-java=\"`addHostname`\"\u003e`addHostname`\u003c/span\u003e processor adds the hostname to log events.\n"
                },
                "customProcessor": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorCustomProcessor:ObservabilityPipelineConfigProcessorGroupProcessorCustomProcessor",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`customProcessor`\" pulumi-lang-dotnet=\"`CustomProcessor`\" pulumi-lang-go=\"`customProcessor`\" pulumi-lang-python=\"`custom_processor`\" pulumi-lang-yaml=\"`customProcessor`\" pulumi-lang-java=\"`customProcessor`\"\u003e`customProcessor`\u003c/span\u003e processor transforms events using Vector Remap Language (VRL) scripts with advanced filtering capabilities.\n"
                },
                "datadogTags": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorDatadogTags:ObservabilityPipelineConfigProcessorGroupProcessorDatadogTags"
                },
                "dedupe": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorDedupe:ObservabilityPipelineConfigProcessorGroupProcessorDedupe",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`dedupe`\" pulumi-lang-dotnet=\"`Dedupe`\" pulumi-lang-go=\"`dedupe`\" pulumi-lang-python=\"`dedupe`\" pulumi-lang-yaml=\"`dedupe`\" pulumi-lang-java=\"`dedupe`\"\u003e`dedupe`\u003c/span\u003e processor removes duplicate fields in log events.\n"
                },
                "displayName": {
                    "type": "string",
                    "description": "A human-friendly name for this processor.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether this processor is enabled.\n"
                },
                "enrichmentTable": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTable:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTable",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`enrichmentTable`\" pulumi-lang-dotnet=\"`EnrichmentTable`\" pulumi-lang-go=\"`enrichmentTable`\" pulumi-lang-python=\"`enrichment_table`\" pulumi-lang-yaml=\"`enrichmentTable`\" pulumi-lang-java=\"`enrichmentTable`\"\u003e`enrichmentTable`\u003c/span\u003e processor enriches logs using a static CSV file or GeoIP database.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorFilter:ObservabilityPipelineConfigProcessorGroupProcessorFilter",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e processor allows conditional processing of logs based on a Datadog search query. Logs that match the \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e query are passed through; others are discarded.\n"
                },
                "generateDatadogMetrics": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetrics:ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetrics",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`generateDatadogMetrics`\" pulumi-lang-dotnet=\"`GenerateDatadogMetrics`\" pulumi-lang-go=\"`generateDatadogMetrics`\" pulumi-lang-python=\"`generate_datadog_metrics`\" pulumi-lang-yaml=\"`generateDatadogMetrics`\" pulumi-lang-java=\"`generateDatadogMetrics`\"\u003e`generateDatadogMetrics`\u003c/span\u003e processor creates custom metrics from logs. Metrics can be counters, gauges, or distributions and optionally grouped by log fields.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier for this processor.\n"
                },
                "include": {
                    "type": "string",
                    "description": "A Datadog search query used to determine which logs this processor targets.\n"
                },
                "metricTags": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorMetricTags:ObservabilityPipelineConfigProcessorGroupProcessorMetricTags",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`metricTags`\" pulumi-lang-dotnet=\"`MetricTags`\" pulumi-lang-go=\"`metricTags`\" pulumi-lang-python=\"`metric_tags`\" pulumi-lang-yaml=\"`metricTags`\" pulumi-lang-java=\"`metricTags`\"\u003e`metricTags`\u003c/span\u003e processor filters metrics based on their tags using Datadog tag key patterns.\n"
                },
                "ocsfMapper": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapper:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapper",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`ocsfMapper`\" pulumi-lang-dotnet=\"`OcsfMapper`\" pulumi-lang-go=\"`ocsfMapper`\" pulumi-lang-python=\"`ocsf_mapper`\" pulumi-lang-yaml=\"`ocsfMapper`\" pulumi-lang-java=\"`ocsfMapper`\"\u003e`ocsfMapper`\u003c/span\u003e processor transforms logs into the OCSF schema using predefined library mappings or custom mapping configuration.\n"
                },
                "parseGrok": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseGrok:ObservabilityPipelineConfigProcessorGroupProcessorParseGrok",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`parseGrok`\" pulumi-lang-dotnet=\"`ParseGrok`\" pulumi-lang-go=\"`parseGrok`\" pulumi-lang-python=\"`parse_grok`\" pulumi-lang-yaml=\"`parseGrok`\" pulumi-lang-java=\"`parseGrok`\"\u003e`parseGrok`\u003c/span\u003e processor extracts structured fields from unstructured log messages using Grok patterns.\n"
                },
                "parseJson": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseJson:ObservabilityPipelineConfigProcessorGroupProcessorParseJson",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`parseJson`\" pulumi-lang-dotnet=\"`ParseJson`\" pulumi-lang-go=\"`parseJson`\" pulumi-lang-python=\"`parse_json`\" pulumi-lang-yaml=\"`parseJson`\" pulumi-lang-java=\"`parseJson`\"\u003e`parseJson`\u003c/span\u003e processor extracts JSON from a specified field and flattens it into the event. This is useful when logs contain embedded JSON as a string.\n"
                },
                "parseXml": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseXml:ObservabilityPipelineConfigProcessorGroupProcessorParseXml",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`parseXml`\" pulumi-lang-dotnet=\"`ParseXml`\" pulumi-lang-go=\"`parseXml`\" pulumi-lang-python=\"`parse_xml`\" pulumi-lang-yaml=\"`parseXml`\" pulumi-lang-java=\"`parseXml`\"\u003e`parseXml`\u003c/span\u003e processor parses XML from a specified field and extracts it into the event.\n"
                },
                "quota": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuota:ObservabilityPipelineConfigProcessorGroupProcessorQuota",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`quota`\" pulumi-lang-dotnet=\"`Quota`\" pulumi-lang-go=\"`quota`\" pulumi-lang-python=\"`quota`\" pulumi-lang-yaml=\"`quota`\" pulumi-lang-java=\"`quota`\"\u003e`quota`\u003c/span\u003e processor measures logging traffic for logs that match a specified filter. When the configured daily quota is met, the processor can drop or alert.\n"
                },
                "reduce": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorReduce:ObservabilityPipelineConfigProcessorGroupProcessorReduce",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`reduce`\" pulumi-lang-dotnet=\"`Reduce`\" pulumi-lang-go=\"`reduce`\" pulumi-lang-python=\"`reduce`\" pulumi-lang-yaml=\"`reduce`\" pulumi-lang-java=\"`reduce`\"\u003e`reduce`\u003c/span\u003e processor aggregates and merges logs based on matching keys and merge strategies.\n"
                },
                "removeFields": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorRemoveFields:ObservabilityPipelineConfigProcessorGroupProcessorRemoveFields",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`removeFields`\" pulumi-lang-dotnet=\"`RemoveFields`\" pulumi-lang-go=\"`removeFields`\" pulumi-lang-python=\"`remove_fields`\" pulumi-lang-yaml=\"`removeFields`\" pulumi-lang-java=\"`removeFields`\"\u003e`removeFields`\u003c/span\u003e processor deletes specified fields from logs.\n"
                },
                "renameFields": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorRenameFields:ObservabilityPipelineConfigProcessorGroupProcessorRenameFields",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`renameFields`\" pulumi-lang-dotnet=\"`RenameFields`\" pulumi-lang-go=\"`renameFields`\" pulumi-lang-python=\"`rename_fields`\" pulumi-lang-yaml=\"`renameFields`\" pulumi-lang-java=\"`renameFields`\"\u003e`renameFields`\u003c/span\u003e processor changes field names.\n"
                },
                "sample": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSample:ObservabilityPipelineConfigProcessorGroupProcessorSample",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`sample`\" pulumi-lang-dotnet=\"`Sample`\" pulumi-lang-go=\"`sample`\" pulumi-lang-python=\"`sample`\" pulumi-lang-yaml=\"`sample`\" pulumi-lang-java=\"`sample`\"\u003e`sample`\u003c/span\u003e processor allows probabilistic sampling of logs at a fixed rate.\n"
                },
                "sensitiveDataScanner": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScanner:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScanner",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`sensitiveDataScanner`\" pulumi-lang-dotnet=\"`SensitiveDataScanner`\" pulumi-lang-go=\"`sensitiveDataScanner`\" pulumi-lang-python=\"`sensitive_data_scanner`\" pulumi-lang-yaml=\"`sensitiveDataScanner`\" pulumi-lang-java=\"`sensitiveDataScanner`\"\u003e`sensitiveDataScanner`\u003c/span\u003e processor detects and optionally redacts sensitive data in log events.\n"
                },
                "splitArray": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSplitArray:ObservabilityPipelineConfigProcessorGroupProcessorSplitArray",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`splitArray`\" pulumi-lang-dotnet=\"`SplitArray`\" pulumi-lang-go=\"`splitArray`\" pulumi-lang-python=\"`split_array`\" pulumi-lang-yaml=\"`splitArray`\" pulumi-lang-java=\"`splitArray`\"\u003e`splitArray`\u003c/span\u003e processor splits array fields into separate events based on configured rules.\n"
                },
                "throttle": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorThrottle:ObservabilityPipelineConfigProcessorGroupProcessorThrottle",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`throttle`\" pulumi-lang-dotnet=\"`Throttle`\" pulumi-lang-go=\"`throttle`\" pulumi-lang-python=\"`throttle`\" pulumi-lang-yaml=\"`throttle`\" pulumi-lang-java=\"`throttle`\"\u003e`throttle`\u003c/span\u003e processor limits the number of events that pass through over a given time window.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id",
                "include"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddEnvVars:ObservabilityPipelineConfigProcessorGroupProcessorAddEnvVars": {
            "properties": {
                "variables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddEnvVarsVariable:ObservabilityPipelineConfigProcessorGroupProcessorAddEnvVarsVariable"
                    },
                    "description": "A list of environment variable mappings to apply to log fields.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddEnvVarsVariable:ObservabilityPipelineConfigProcessorGroupProcessorAddEnvVarsVariable": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "The target field in the log event.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the environment variable to read.\n"
                }
            },
            "type": "object",
            "required": [
                "field",
                "name"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddFields:ObservabilityPipelineConfigProcessorGroupProcessorAddFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddFieldsField:ObservabilityPipelineConfigProcessorGroupProcessorAddFieldsField"
                    },
                    "description": "A list of static fields (key-value pairs) that is added to each log event processed by this component.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddFieldsField:ObservabilityPipelineConfigProcessorGroupProcessorAddFieldsField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The field name to add.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value to assign to the field.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorAddHostname:ObservabilityPipelineConfigProcessorGroupProcessorAddHostname": {
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorCustomProcessor:ObservabilityPipelineConfigProcessorGroupProcessorCustomProcessor": {
            "properties": {
                "remaps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorCustomProcessorRemap:ObservabilityPipelineConfigProcessorGroupProcessorCustomProcessorRemap"
                    },
                    "description": "Array of VRL remap configurations. Each remap defines a transformation rule with its own filter and VRL script.\n"
                }
            },
            "type": "object",
            "required": [
                "remaps"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorCustomProcessorRemap:ObservabilityPipelineConfigProcessorGroupProcessorCustomProcessorRemap": {
            "properties": {
                "dropOnError": {
                    "type": "boolean",
                    "description": "Whether to drop events that cause errors during transformation.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether this remap rule is enabled.\n"
                },
                "include": {
                    "type": "string",
                    "description": "A Datadog search query used to filter events for this specific remap rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A descriptive name for this remap rule.\n"
                },
                "source": {
                    "type": "string",
                    "description": "The VRL script source code that defines the transformation logic.\n"
                }
            },
            "type": "object",
            "required": [
                "dropOnError",
                "enabled",
                "include",
                "name",
                "source"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorDatadogTags:ObservabilityPipelineConfigProcessorGroupProcessorDatadogTags": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "Valid values are \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`exclude`\" pulumi-lang-dotnet=\"`Exclude`\" pulumi-lang-go=\"`exclude`\" pulumi-lang-python=\"`exclude`\" pulumi-lang-yaml=\"`exclude`\" pulumi-lang-java=\"`exclude`\"\u003e`exclude`\u003c/span\u003e.\n"
                },
                "keys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "mode": {
                    "type": "string",
                    "description": "Valid values are \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "keys",
                "mode"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorDedupe:ObservabilityPipelineConfigProcessorGroupProcessorDedupe": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of log field paths to check for duplicates.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The deduplication mode to apply to the fields.\n"
                }
            },
            "type": "object",
            "required": [
                "fields",
                "mode"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTable:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTable": {
            "properties": {
                "file": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFile:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFile",
                    "description": "Defines a static enrichment table loaded from a CSV file.\n"
                },
                "geoip": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableGeoip:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableGeoip",
                    "description": "Uses a GeoIP database to enrich logs based on an IP field.\n"
                },
                "referenceTable": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableReferenceTable:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableReferenceTable",
                    "description": "Uses a Datadog reference table to enrich logs.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Path where enrichment results should be stored in the log.\n"
                }
            },
            "type": "object",
            "required": [
                "target"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFile:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFile": {
            "properties": {
                "encoding": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFileEncoding:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFileEncoding"
                },
                "keys": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFileKey:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFileKey"
                    },
                    "description": "Key fields used to look up enrichment values.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Path to the CSV file.\n"
                }
            },
            "type": "object",
            "required": [
                "encoding"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFileEncoding:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFileEncoding": {
            "properties": {
                "delimiter": {
                    "type": "string",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`encoding`\" pulumi-lang-dotnet=\"`Encoding`\" pulumi-lang-go=\"`encoding`\" pulumi-lang-python=\"`encoding`\" pulumi-lang-yaml=\"`encoding`\" pulumi-lang-java=\"`encoding`\"\u003e`encoding`\u003c/span\u003e \u003cspan pulumi-lang-nodejs=\"`delimiter`\" pulumi-lang-dotnet=\"`Delimiter`\" pulumi-lang-go=\"`delimiter`\" pulumi-lang-python=\"`delimiter`\" pulumi-lang-yaml=\"`delimiter`\" pulumi-lang-java=\"`delimiter`\"\u003e`delimiter`\u003c/span\u003e.\n"
                },
                "includesHeaders": {
                    "type": "boolean",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`encoding`\" pulumi-lang-dotnet=\"`Encoding`\" pulumi-lang-go=\"`encoding`\" pulumi-lang-python=\"`encoding`\" pulumi-lang-yaml=\"`encoding`\" pulumi-lang-java=\"`encoding`\"\u003e`encoding`\u003c/span\u003e \u003cspan pulumi-lang-nodejs=\"`includesHeaders`\" pulumi-lang-dotnet=\"`IncludesHeaders`\" pulumi-lang-go=\"`includesHeaders`\" pulumi-lang-python=\"`includes_headers`\" pulumi-lang-yaml=\"`includesHeaders`\" pulumi-lang-java=\"`includesHeaders`\"\u003e`includesHeaders`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "File encoding format.\n"
                }
            },
            "type": "object",
            "required": [
                "delimiter",
                "type"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFileKey:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableFileKey": {
            "properties": {
                "column": {
                    "type": "string",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`items`\" pulumi-lang-dotnet=\"`Items`\" pulumi-lang-go=\"`items`\" pulumi-lang-python=\"`items`\" pulumi-lang-yaml=\"`items`\" pulumi-lang-java=\"`items`\"\u003e`items`\u003c/span\u003e \u003cspan pulumi-lang-nodejs=\"`column`\" pulumi-lang-dotnet=\"`Column`\" pulumi-lang-go=\"`column`\" pulumi-lang-python=\"`column`\" pulumi-lang-yaml=\"`column`\" pulumi-lang-java=\"`column`\"\u003e`column`\u003c/span\u003e.\n"
                },
                "comparison": {
                    "type": "string",
                    "description": "The comparison method (e.g. equals).\n"
                },
                "field": {
                    "type": "string",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`items`\" pulumi-lang-dotnet=\"`Items`\" pulumi-lang-go=\"`items`\" pulumi-lang-python=\"`items`\" pulumi-lang-yaml=\"`items`\" pulumi-lang-java=\"`items`\"\u003e`items`\u003c/span\u003e \u003cspan pulumi-lang-nodejs=\"`field`\" pulumi-lang-dotnet=\"`Field`\" pulumi-lang-go=\"`field`\" pulumi-lang-python=\"`field`\" pulumi-lang-yaml=\"`field`\" pulumi-lang-java=\"`field`\"\u003e`field`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableGeoip:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableGeoip": {
            "properties": {
                "keyField": {
                    "type": "string",
                    "description": "Path to the IP field in the log.\n"
                },
                "locale": {
                    "type": "string",
                    "description": "Locale used to resolve geographical names.\n"
                },
                "path": {
                    "type": "string",
                    "description": "Path to the GeoIP database file.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableReferenceTable:ObservabilityPipelineConfigProcessorGroupProcessorEnrichmentTableReferenceTable": {
            "properties": {
                "appKeyKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Datadog application key for the reference table.\n"
                },
                "columns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of column names to include from the reference table. If not provided, all columns are included.\n"
                },
                "keyField": {
                    "type": "string",
                    "description": "Path to the field in the log event to match against the reference table.\n"
                },
                "tableId": {
                    "type": "string",
                    "description": "The unique identifier of the reference table.\n"
                }
            },
            "type": "object",
            "required": [
                "keyField",
                "tableId"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorFilter:ObservabilityPipelineConfigProcessorGroupProcessorFilter": {
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetrics:ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetrics": {
            "properties": {
                "metrics": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetricsMetric:ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetricsMetric"
                    },
                    "description": "Configuration for generating individual metrics.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetricsMetric:ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetricsMetric": {
            "properties": {
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Optional fields used to group the metric series.\n"
                },
                "include": {
                    "type": "string",
                    "description": "Datadog filter query to match logs for metric generation.\n"
                },
                "metricType": {
                    "type": "string",
                    "description": "Type of metric to create.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the custom metric to be created.\n"
                },
                "value": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetricsMetricValue:ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetricsMetricValue",
                    "description": "Specifies how the value of the generated metric is computed.\n"
                }
            },
            "type": "object",
            "required": [
                "include",
                "metricType",
                "name",
                "value"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetricsMetricValue:ObservabilityPipelineConfigProcessorGroupProcessorGenerateDatadogMetricsMetricValue": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "Name of the log field containing the numeric value to increment the metric by (used only for \u003cspan pulumi-lang-nodejs=\"`incrementByField`\" pulumi-lang-dotnet=\"`IncrementByField`\" pulumi-lang-go=\"`incrementByField`\" pulumi-lang-python=\"`increment_by_field`\" pulumi-lang-yaml=\"`incrementByField`\" pulumi-lang-java=\"`incrementByField`\"\u003e`incrementByField`\u003c/span\u003e).\n"
                },
                "strategy": {
                    "type": "string",
                    "description": "Metric value strategy: \u003cspan pulumi-lang-nodejs=\"`incrementByOne`\" pulumi-lang-dotnet=\"`IncrementByOne`\" pulumi-lang-go=\"`incrementByOne`\" pulumi-lang-python=\"`increment_by_one`\" pulumi-lang-yaml=\"`incrementByOne`\" pulumi-lang-java=\"`incrementByOne`\"\u003e`incrementByOne`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`incrementByField`\" pulumi-lang-dotnet=\"`IncrementByField`\" pulumi-lang-go=\"`incrementByField`\" pulumi-lang-python=\"`increment_by_field`\" pulumi-lang-yaml=\"`incrementByField`\" pulumi-lang-java=\"`incrementByField`\"\u003e`incrementByField`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "strategy"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorMetricTags:ObservabilityPipelineConfigProcessorGroupProcessorMetricTags": {
            "properties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorMetricTagsRule:ObservabilityPipelineConfigProcessorGroupProcessorMetricTagsRule"
                    },
                    "description": "A list of rules for filtering metric tags.\n"
                }
            },
            "type": "object",
            "required": [
                "rules"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorMetricTagsRule:ObservabilityPipelineConfigProcessorGroupProcessorMetricTagsRule": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The action to take on tags with matching keys. Valid values are \u003cspan pulumi-lang-nodejs=\"`include`\" pulumi-lang-dotnet=\"`Include`\" pulumi-lang-go=\"`include`\" pulumi-lang-python=\"`include`\" pulumi-lang-yaml=\"`include`\" pulumi-lang-java=\"`include`\"\u003e`include`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`exclude`\" pulumi-lang-dotnet=\"`Exclude`\" pulumi-lang-go=\"`exclude`\" pulumi-lang-python=\"`exclude`\" pulumi-lang-yaml=\"`exclude`\" pulumi-lang-java=\"`exclude`\"\u003e`exclude`\u003c/span\u003e.\n"
                },
                "include": {
                    "type": "string",
                    "description": "A Datadog search query used to determine which metrics this rule targets.\n"
                },
                "keys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag keys to include or exclude.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The processing mode for tag filtering. Valid values are \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "include",
                "keys",
                "mode"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapper:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapper": {
            "properties": {
                "keepUnmatched": {
                    "type": "boolean",
                    "description": "Whether to keep an event that does not match any of the mapping filters.\n"
                },
                "mappings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMapping:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMapping"
                    },
                    "description": "List of OCSF mapping entries. Each entry uses either a library mapping or a custom mapping.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMapping:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMapping": {
            "properties": {
                "customMapping": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMapping:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMapping",
                    "description": "Custom OCSF mapping configuration for transforming logs.\n"
                },
                "include": {
                    "type": "string",
                    "description": "Search query for selecting which logs the mapping applies to.\n"
                },
                "libraryMapping": {
                    "type": "string",
                    "description": "Predefined library mapping for log transformation. Use this or custom_mapping, not both.\n"
                }
            },
            "type": "object",
            "required": [
                "include"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMapping:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMapping": {
            "properties": {
                "mappings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMapping:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMapping"
                    },
                    "description": "A list of field mapping rules for transforming log fields to OCSF schema fields.\n"
                },
                "metadata": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMetadata:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMetadata",
                    "description": "Metadata for the custom OCSF mapping.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "The version of the custom mapping configuration.\n"
                }
            },
            "type": "object",
            "required": [
                "metadata",
                "version"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMapping:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMapping": {
            "properties": {
                "default": {
                    "type": "string",
                    "description": "The default value to use if the source field is missing or empty.\n"
                },
                "dest": {
                    "type": "string",
                    "description": "The destination OCSF field path.\n"
                },
                "lookup": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMappingLookup:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMappingLookup",
                    "description": "Lookup table configuration for mapping source values to destination values.\n"
                },
                "source": {
                    "type": "string",
                    "description": "The source field path from the log event.\n"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Multiple source field paths for combined mapping.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A static value to use for the destination field.\n"
                }
            },
            "type": "object",
            "required": [
                "dest"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMappingLookup:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMappingLookup": {
            "properties": {
                "default": {
                    "type": "string",
                    "description": "The default value to use if no lookup match is found.\n"
                },
                "tables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMappingLookupTable:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMappingLookupTable"
                    },
                    "description": "A list of lookup table entries for value transformation.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMappingLookupTable:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMappingLookupTable": {
            "properties": {
                "contains": {
                    "type": "string",
                    "description": "The substring to match in the source value.\n"
                },
                "equals": {
                    "type": "string",
                    "description": "The exact value to match in the source.\n"
                },
                "equalsSource": {
                    "type": "string",
                    "description": "The source field to match against.\n"
                },
                "matches": {
                    "type": "string",
                    "description": "A regex pattern to match in the source value.\n"
                },
                "notMatches": {
                    "type": "string",
                    "description": "A regex pattern that must not match the source value.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value to use when a match is found.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMetadata:ObservabilityPipelineConfigProcessorGroupProcessorOcsfMapperMappingCustomMappingMetadata": {
            "properties": {
                "class": {
                    "type": "string",
                    "description": "The OCSF event class name.\n"
                },
                "profiles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of OCSF profiles to apply.\n"
                },
                "version": {
                    "type": "string",
                    "description": "The OCSF schema version.\n"
                }
            },
            "type": "object",
            "required": [
                "class",
                "version"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseGrok:ObservabilityPipelineConfigProcessorGroupProcessorParseGrok": {
            "properties": {
                "disableLibraryRules": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, disables the default Grok rules provided by Datadog.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRule:ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRule"
                    },
                    "description": "The list of Grok parsing rules. If multiple parsing rules are provided, they are evaluated in order. The first successful match is applied.\n"
                }
            },
            "type": "object",
            "required": [
                "rules"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRule:ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRule": {
            "properties": {
                "matchRules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRuleMatchRule:ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRuleMatchRule"
                    },
                    "description": "A list of Grok parsing rules that define how to extract fields from the source field. Each rule must contain a name and a valid Grok pattern.\n"
                },
                "source": {
                    "type": "string",
                    "description": "The name of the field in the log event to apply the Grok rules to.\n"
                },
                "supportRules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRuleSupportRule:ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRuleSupportRule"
                    },
                    "description": "A list of helper Grok rules that can be referenced by the parsing rules.\n"
                }
            },
            "type": "object",
            "required": [
                "matchRules",
                "source"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRuleMatchRule:ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRuleMatchRule": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the rule.\n"
                },
                "rule": {
                    "type": "string",
                    "description": "The definition of the Grok rule.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "rule"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRuleSupportRule:ObservabilityPipelineConfigProcessorGroupProcessorParseGrokRuleSupportRule": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the helper Grok rule.\n"
                },
                "rule": {
                    "type": "string",
                    "description": "The definition of the helper Grok rule.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "rule"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseJson:ObservabilityPipelineConfigProcessorGroupProcessorParseJson": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "The field to parse.\n"
                }
            },
            "type": "object",
            "required": [
                "field"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorParseXml:ObservabilityPipelineConfigProcessorGroupProcessorParseXml": {
            "properties": {
                "alwaysUseTextKey": {
                    "type": "boolean",
                    "description": "Whether to always store text inside an object using the text key even when no attributes exist.\n"
                },
                "attrPrefix": {
                    "type": "string",
                    "description": "The prefix to use for XML attributes in the parsed output. If the field is left empty, the original attribute key is used.\n"
                },
                "field": {
                    "type": "string",
                    "description": "The path to the log field on which you want to parse XML.\n"
                },
                "includeAttr": {
                    "type": "boolean",
                    "description": "Whether to include XML attributes in the parsed output.\n"
                },
                "parseBool": {
                    "type": "boolean",
                    "description": "Whether to parse boolean values from strings.\n"
                },
                "parseNull": {
                    "type": "boolean",
                    "description": "Whether to parse null values.\n"
                },
                "parseNumber": {
                    "type": "boolean",
                    "description": "Whether to parse numeric values from strings.\n"
                },
                "textKey": {
                    "type": "string",
                    "description": "The key name to use for the text node when XML attributes are appended.\n"
                }
            },
            "type": "object",
            "required": [
                "field"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuota:ObservabilityPipelineConfigProcessorGroupProcessorQuota": {
            "properties": {
                "dropEvents": {
                    "type": "boolean",
                    "description": "Whether to drop events exceeding the limit.\n"
                },
                "ignoreWhenMissingPartitions": {
                    "type": "boolean",
                    "description": "Whether to ignore when partition fields are missing.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuotaLimit:ObservabilityPipelineConfigProcessorGroupProcessorQuotaLimit"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the quota.\n"
                },
                "overflowAction": {
                    "type": "string",
                    "description": "The action to take when the quota is exceeded: \u003cspan pulumi-lang-nodejs=\"`drop`\" pulumi-lang-dotnet=\"`Drop`\" pulumi-lang-go=\"`drop`\" pulumi-lang-python=\"`drop`\" pulumi-lang-yaml=\"`drop`\" pulumi-lang-java=\"`drop`\"\u003e`drop`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`noAction`\" pulumi-lang-dotnet=\"`NoAction`\" pulumi-lang-go=\"`noAction`\" pulumi-lang-python=\"`no_action`\" pulumi-lang-yaml=\"`noAction`\" pulumi-lang-java=\"`noAction`\"\u003e`noAction`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`overflowRouting`\" pulumi-lang-dotnet=\"`OverflowRouting`\" pulumi-lang-go=\"`overflowRouting`\" pulumi-lang-python=\"`overflow_routing`\" pulumi-lang-yaml=\"`overflowRouting`\" pulumi-lang-java=\"`overflowRouting`\"\u003e`overflowRouting`\u003c/span\u003e.\n"
                },
                "overrides": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverride:ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverride"
                    },
                    "description": "The overrides for field-specific quotas.\n"
                },
                "partitionFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of partition fields.\n"
                },
                "tooManyBucketsAction": {
                    "type": "string",
                    "description": "The action to take when the max number of buckets is exceeded: \u003cspan pulumi-lang-nodejs=\"`drop`\" pulumi-lang-dotnet=\"`Drop`\" pulumi-lang-go=\"`drop`\" pulumi-lang-python=\"`drop`\" pulumi-lang-yaml=\"`drop`\" pulumi-lang-java=\"`drop`\"\u003e`drop`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`noAction`\" pulumi-lang-dotnet=\"`NoAction`\" pulumi-lang-go=\"`noAction`\" pulumi-lang-python=\"`no_action`\" pulumi-lang-yaml=\"`noAction`\" pulumi-lang-java=\"`noAction`\"\u003e`noAction`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`overflowRouting`\" pulumi-lang-dotnet=\"`OverflowRouting`\" pulumi-lang-go=\"`overflowRouting`\" pulumi-lang-python=\"`overflow_routing`\" pulumi-lang-yaml=\"`overflowRouting`\" pulumi-lang-java=\"`overflowRouting`\"\u003e`overflowRouting`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "limit",
                "name"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuotaLimit:ObservabilityPipelineConfigProcessorGroupProcessorQuotaLimit": {
            "properties": {
                "enforce": {
                    "type": "string",
                    "description": "Whether to enforce by 'bytes' or 'events'. Valid values are \u003cspan pulumi-lang-nodejs=\"`bytes`\" pulumi-lang-dotnet=\"`Bytes`\" pulumi-lang-go=\"`bytes`\" pulumi-lang-python=\"`bytes`\" pulumi-lang-yaml=\"`bytes`\" pulumi-lang-java=\"`bytes`\"\u003e`bytes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The daily quota limit.\n"
                }
            },
            "type": "object",
            "required": [
                "enforce",
                "limit"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverride:ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverride": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverrideField:ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverrideField"
                    },
                    "description": "Fields that trigger this override.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverrideLimit:ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverrideLimit"
                }
            },
            "type": "object",
            "required": [
                "limit"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverrideField:ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverrideField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The field name.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The field value.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverrideLimit:ObservabilityPipelineConfigProcessorGroupProcessorQuotaOverrideLimit": {
            "properties": {
                "enforce": {
                    "type": "string",
                    "description": "Whether to enforce by 'bytes' or 'events'. Valid values are \u003cspan pulumi-lang-nodejs=\"`bytes`\" pulumi-lang-dotnet=\"`Bytes`\" pulumi-lang-go=\"`bytes`\" pulumi-lang-python=\"`bytes`\" pulumi-lang-yaml=\"`bytes`\" pulumi-lang-java=\"`bytes`\"\u003e`bytes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The daily quota limit.\n"
                }
            },
            "type": "object",
            "required": [
                "enforce",
                "limit"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorReduce:ObservabilityPipelineConfigProcessorGroupProcessorReduce": {
            "properties": {
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of fields used to group log events for merging.\n"
                },
                "mergeStrategies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorReduceMergeStrategy:ObservabilityPipelineConfigProcessorGroupProcessorReduceMergeStrategy"
                    },
                    "description": "List of merge strategies defining how values from grouped events should be combined.\n"
                }
            },
            "type": "object",
            "required": [
                "groupBies",
                "mergeStrategies"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorReduceMergeStrategy:ObservabilityPipelineConfigProcessorGroupProcessorReduceMergeStrategy": {
            "properties": {
                "path": {
                    "type": "string",
                    "description": "The field path in the log event.\n"
                },
                "strategy": {
                    "type": "string",
                    "description": "The merge strategy to apply.\n"
                }
            },
            "type": "object",
            "required": [
                "path",
                "strategy"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorRemoveFields:ObservabilityPipelineConfigProcessorGroupProcessorRemoveFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of fields to remove from the events.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorRenameFields:ObservabilityPipelineConfigProcessorGroupProcessorRenameFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorRenameFieldsField:ObservabilityPipelineConfigProcessorGroupProcessorRenameFieldsField"
                    },
                    "description": "List of fields to rename.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorRenameFieldsField:ObservabilityPipelineConfigProcessorGroupProcessorRenameFieldsField": {
            "properties": {
                "destination": {
                    "type": "string",
                    "description": "Destination field name.\n"
                },
                "preserveSource": {
                    "type": "boolean",
                    "description": "Whether to keep the original field.\n"
                },
                "source": {
                    "type": "string",
                    "description": "Source field to rename.\n"
                }
            },
            "type": "object",
            "required": [
                "destination",
                "preserveSource",
                "source"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSample:ObservabilityPipelineConfigProcessorGroupProcessorSample": {
            "properties": {
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Optional list of fields to group events by. Each group is sampled independently.\n"
                },
                "percentage": {
                    "type": "number",
                    "description": "The percentage of logs to sample.\n"
                }
            },
            "type": "object",
            "required": [
                "percentage"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScanner:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScanner": {
            "properties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRule:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRule"
                    },
                    "description": "A list of rules for identifying and acting on sensitive data patterns.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRule:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRule": {
            "properties": {
                "keywordOptions": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleKeywordOptions:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleKeywordOptions",
                    "description": "Keyword-based proximity matching for sensitive data.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A name identifying the rule.\n"
                },
                "onMatch": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatch:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatch",
                    "description": "The action to take when a sensitive value is found.\n"
                },
                "pattern": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePattern:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePattern",
                    "description": "Pattern detection configuration for identifying sensitive data using either a custom regex or a library reference.\n"
                },
                "scope": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScope:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScope",
                    "description": "Field-level targeting options that determine where the scanner should operate.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags assigned to this rule for filtering and classification.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "tags"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleKeywordOptions:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleKeywordOptions": {
            "properties": {
                "keywords": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of keywords to match near the sensitive pattern.\n"
                },
                "proximity": {
                    "type": "integer",
                    "description": "Maximum number of tokens between a keyword and a sensitive value match.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatch:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatch": {
            "properties": {
                "hash": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchHash:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchHash",
                    "description": "Hashes the matched value.\n"
                },
                "partialRedact": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchPartialRedact:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchPartialRedact",
                    "description": "Redacts part of the matched value (e.g., keep last 4 characters).\n"
                },
                "redact": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchRedact:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchRedact",
                    "description": "Redacts the matched value.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchHash:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchHash": {
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchPartialRedact:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchPartialRedact": {
            "properties": {
                "characters": {
                    "type": "integer",
                    "description": "Number of characters to keep.\n"
                },
                "direction": {
                    "type": "string",
                    "description": "Direction from which to keep characters: \u003cspan pulumi-lang-nodejs=\"`first`\" pulumi-lang-dotnet=\"`First`\" pulumi-lang-go=\"`first`\" pulumi-lang-python=\"`first`\" pulumi-lang-yaml=\"`first`\" pulumi-lang-java=\"`first`\"\u003e`first`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchRedact:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleOnMatchRedact": {
            "properties": {
                "replace": {
                    "type": "string",
                    "description": "Replacement string for redacted values (e.g., `***`).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePattern:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePattern": {
            "properties": {
                "custom": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePatternCustom:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePatternCustom",
                    "description": "Pattern detection using a custom regular expression.\n"
                },
                "library": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePatternLibrary:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePatternLibrary",
                    "description": "Pattern detection using a predefined pattern from the sensitive data scanner pattern library.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePatternCustom:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePatternCustom": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Human-readable description providing context about a sensitive data scanner rule.\n"
                },
                "rule": {
                    "type": "string",
                    "description": "A regular expression used to detect sensitive values. Must be a valid regex.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePatternLibrary:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRulePatternLibrary": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Human-readable description providing context about a sensitive data scanner rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "Identifier for a predefined pattern from the sensitive data scanner pattern library.\n"
                },
                "useRecommendedKeywords": {
                    "type": "boolean",
                    "description": "Whether to augment the pattern with recommended keywords (optional).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScope:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScope": {
            "properties": {
                "all": {
                    "type": "boolean",
                    "description": "Scan all fields.\n"
                },
                "exclude": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScopeExclude:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScopeExclude",
                    "description": "Explicitly exclude these fields from scanning.\n"
                },
                "include": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScopeInclude:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScopeInclude",
                    "description": "Explicitly include these fields for scanning.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScopeExclude:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScopeExclude": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The fields to exclude from scanning.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScopeInclude:ObservabilityPipelineConfigProcessorGroupProcessorSensitiveDataScannerRuleScopeInclude": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The fields to include in scanning.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSplitArray:ObservabilityPipelineConfigProcessorGroupProcessorSplitArray": {
            "properties": {
                "arrays": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSplitArrayArray:ObservabilityPipelineConfigProcessorGroupProcessorSplitArrayArray"
                    },
                    "description": "A list of array split configurations.\n"
                }
            },
            "type": "object",
            "required": [
                "arrays"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorSplitArrayArray:ObservabilityPipelineConfigProcessorGroupProcessorSplitArrayArray": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "The path to the array field to split.\n"
                },
                "include": {
                    "type": "string",
                    "description": "A Datadog search query used to determine which logs this array split operation targets.\n"
                }
            },
            "type": "object",
            "required": [
                "field",
                "include"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigProcessorGroupProcessorThrottle:ObservabilityPipelineConfigProcessorGroupProcessorThrottle": {
            "properties": {
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Optional list of fields used to group events before applying throttling.\n"
                },
                "threshold": {
                    "type": "integer",
                    "description": "The number of events to allow before throttling is applied.\n"
                },
                "window": {
                    "type": "number",
                    "description": "The time window in seconds over which the threshold applies.\n"
                }
            },
            "type": "object",
            "required": [
                "threshold",
                "window"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSource:ObservabilityPipelineConfigSource": {
            "properties": {
                "amazonDataFirehoses": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceAmazonDataFirehose:ObservabilityPipelineConfigSourceAmazonDataFirehose"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`amazonDataFirehose`\" pulumi-lang-dotnet=\"`AmazonDataFirehose`\" pulumi-lang-go=\"`amazonDataFirehose`\" pulumi-lang-python=\"`amazon_data_firehose`\" pulumi-lang-yaml=\"`amazonDataFirehose`\" pulumi-lang-java=\"`amazonDataFirehose`\"\u003e`amazonDataFirehose`\u003c/span\u003e source ingests logs from AWS Data Firehose.\n"
                },
                "amazonS3s": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceAmazonS3:ObservabilityPipelineConfigSourceAmazonS3"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`amazonS3`\" pulumi-lang-dotnet=\"`AmazonS3`\" pulumi-lang-go=\"`amazonS3`\" pulumi-lang-python=\"`amazon_s3`\" pulumi-lang-yaml=\"`amazonS3`\" pulumi-lang-java=\"`amazonS3`\"\u003e`amazonS3`\u003c/span\u003e source ingests logs from an Amazon S3 bucket. It supports AWS authentication and TLS encryption.\n"
                },
                "datadogAgents": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceDatadogAgent:ObservabilityPipelineConfigSourceDatadogAgent"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`datadogAgent`\" pulumi-lang-dotnet=\"`DatadogAgent`\" pulumi-lang-go=\"`datadogAgent`\" pulumi-lang-python=\"`datadog_agent`\" pulumi-lang-yaml=\"`datadogAgent`\" pulumi-lang-java=\"`datadogAgent`\"\u003e`datadogAgent`\u003c/span\u003e source collects logs from the Datadog Agent.\n"
                },
                "fluentBits": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceFluentBit:ObservabilityPipelineConfigSourceFluentBit"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`fluentBit`\" pulumi-lang-dotnet=\"`FluentBit`\" pulumi-lang-go=\"`fluentBit`\" pulumi-lang-python=\"`fluent_bit`\" pulumi-lang-yaml=\"`fluentBit`\" pulumi-lang-java=\"`fluentBit`\"\u003e`fluentBit`\u003c/span\u003e source ingests logs from Fluent Bit.\n"
                },
                "fluentds": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceFluentd:ObservabilityPipelineConfigSourceFluentd"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`fluentd`\" pulumi-lang-dotnet=\"`Fluentd`\" pulumi-lang-go=\"`fluentd`\" pulumi-lang-python=\"`fluentd`\" pulumi-lang-yaml=\"`fluentd`\" pulumi-lang-java=\"`fluentd`\"\u003e`fluentd`\u003c/span\u003e source ingests logs from a Fluentd-compatible service.\n"
                },
                "googlePubsubs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceGooglePubsub:ObservabilityPipelineConfigSourceGooglePubsub"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`googlePubsub`\" pulumi-lang-dotnet=\"`GooglePubsub`\" pulumi-lang-go=\"`googlePubsub`\" pulumi-lang-python=\"`google_pubsub`\" pulumi-lang-yaml=\"`googlePubsub`\" pulumi-lang-java=\"`googlePubsub`\"\u003e`googlePubsub`\u003c/span\u003e source ingests logs from a Google Cloud Pub/Sub subscription.\n"
                },
                "httpClients": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceHttpClient:ObservabilityPipelineConfigSourceHttpClient"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`httpClient`\" pulumi-lang-dotnet=\"`HttpClient`\" pulumi-lang-go=\"`httpClient`\" pulumi-lang-python=\"`http_client`\" pulumi-lang-yaml=\"`httpClient`\" pulumi-lang-java=\"`httpClient`\"\u003e`httpClient`\u003c/span\u003e source scrapes logs from HTTP endpoints at regular intervals.\n"
                },
                "httpServers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceHttpServer:ObservabilityPipelineConfigSourceHttpServer"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`httpServer`\" pulumi-lang-dotnet=\"`HttpServer`\" pulumi-lang-go=\"`httpServer`\" pulumi-lang-python=\"`http_server`\" pulumi-lang-yaml=\"`httpServer`\" pulumi-lang-java=\"`httpServer`\"\u003e`httpServer`\u003c/span\u003e source collects logs over HTTP POST from external services.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The unique identifier for this source.\n"
                },
                "kafkas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceKafka:ObservabilityPipelineConfigSourceKafka"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`kafka`\" pulumi-lang-dotnet=\"`Kafka`\" pulumi-lang-go=\"`kafka`\" pulumi-lang-python=\"`kafka`\" pulumi-lang-yaml=\"`kafka`\" pulumi-lang-java=\"`kafka`\"\u003e`kafka`\u003c/span\u003e source ingests data from Apache Kafka topics.\n"
                },
                "logstashes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceLogstash:ObservabilityPipelineConfigSourceLogstash"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`logstash`\" pulumi-lang-dotnet=\"`Logstash`\" pulumi-lang-go=\"`logstash`\" pulumi-lang-python=\"`logstash`\" pulumi-lang-yaml=\"`logstash`\" pulumi-lang-java=\"`logstash`\"\u003e`logstash`\u003c/span\u003e source ingests logs from a Logstash forwarder.\n"
                },
                "opentelemetry": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceOpentelemetry:ObservabilityPipelineConfigSourceOpentelemetry",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`opentelemetry`\" pulumi-lang-dotnet=\"`Opentelemetry`\" pulumi-lang-go=\"`opentelemetry`\" pulumi-lang-python=\"`opentelemetry`\" pulumi-lang-yaml=\"`opentelemetry`\" pulumi-lang-java=\"`opentelemetry`\"\u003e`opentelemetry`\u003c/span\u003e source receives telemetry data using the OpenTelemetry Protocol (OTLP) over gRPC and HTTP.\n"
                },
                "rsyslogs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceRsyslog:ObservabilityPipelineConfigSourceRsyslog"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`rsyslog`\" pulumi-lang-dotnet=\"`Rsyslog`\" pulumi-lang-go=\"`rsyslog`\" pulumi-lang-python=\"`rsyslog`\" pulumi-lang-yaml=\"`rsyslog`\" pulumi-lang-java=\"`rsyslog`\"\u003e`rsyslog`\u003c/span\u003e source listens for logs over TCP or UDP from an \u003cspan pulumi-lang-nodejs=\"`rsyslog`\" pulumi-lang-dotnet=\"`Rsyslog`\" pulumi-lang-go=\"`rsyslog`\" pulumi-lang-python=\"`rsyslog`\" pulumi-lang-yaml=\"`rsyslog`\" pulumi-lang-java=\"`rsyslog`\"\u003e`rsyslog`\u003c/span\u003e server using the syslog protocol.\n"
                },
                "sockets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSocket:ObservabilityPipelineConfigSourceSocket"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`socket`\" pulumi-lang-dotnet=\"`Socket`\" pulumi-lang-go=\"`socket`\" pulumi-lang-python=\"`socket`\" pulumi-lang-yaml=\"`socket`\" pulumi-lang-java=\"`socket`\"\u003e`socket`\u003c/span\u003e source ingests logs over TCP or UDP.\n"
                },
                "splunkHecs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSplunkHec:ObservabilityPipelineConfigSourceSplunkHec"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`splunkHec`\" pulumi-lang-dotnet=\"`SplunkHec`\" pulumi-lang-go=\"`splunkHec`\" pulumi-lang-python=\"`splunk_hec`\" pulumi-lang-yaml=\"`splunkHec`\" pulumi-lang-java=\"`splunkHec`\"\u003e`splunkHec`\u003c/span\u003e source implements the Splunk HTTP Event Collector (HEC) API.\n"
                },
                "splunkTcps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSplunkTcp:ObservabilityPipelineConfigSourceSplunkTcp"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`splunkTcp`\" pulumi-lang-dotnet=\"`SplunkTcp`\" pulumi-lang-go=\"`splunkTcp`\" pulumi-lang-python=\"`splunk_tcp`\" pulumi-lang-yaml=\"`splunkTcp`\" pulumi-lang-java=\"`splunkTcp`\"\u003e`splunkTcp`\u003c/span\u003e source receives logs from a Splunk Universal Forwarder over TCP. TLS is supported for secure transmission.\n"
                },
                "sumoLogics": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSumoLogic:ObservabilityPipelineConfigSourceSumoLogic"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`sumoLogic`\" pulumi-lang-dotnet=\"`SumoLogic`\" pulumi-lang-go=\"`sumoLogic`\" pulumi-lang-python=\"`sumo_logic`\" pulumi-lang-yaml=\"`sumoLogic`\" pulumi-lang-java=\"`sumoLogic`\"\u003e`sumoLogic`\u003c/span\u003e source receives logs from Sumo Logic collectors.\n"
                },
                "syslogNgs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSyslogNg:ObservabilityPipelineConfigSourceSyslogNg"
                    },
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`syslogNg`\" pulumi-lang-dotnet=\"`SyslogNg`\" pulumi-lang-go=\"`syslogNg`\" pulumi-lang-python=\"`syslog_ng`\" pulumi-lang-yaml=\"`syslogNg`\" pulumi-lang-java=\"`syslogNg`\"\u003e`syslogNg`\u003c/span\u003e source listens for logs over TCP or UDP from a `syslog-ng` server using the syslog protocol.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceAmazonDataFirehose:ObservabilityPipelineConfigSourceAmazonDataFirehose": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address.\n"
                },
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceAmazonDataFirehoseAuth:ObservabilityPipelineConfigSourceAmazonDataFirehoseAuth",
                    "description": "AWS authentication credentials used for accessing AWS services. If omitted, the system's default credentials are used (for example, the IAM role and environment variables).\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceAmazonDataFirehoseTls:ObservabilityPipelineConfigSourceAmazonDataFirehoseTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceAmazonDataFirehoseAuth:ObservabilityPipelineConfigSourceAmazonDataFirehoseAuth": {
            "properties": {
                "assumeRole": {
                    "type": "string",
                    "description": "The Amazon Resource Name (ARN) of the role to assume.\n"
                },
                "externalId": {
                    "type": "string",
                    "description": "A unique identifier for cross-account role assumption.\n"
                },
                "sessionName": {
                    "type": "string",
                    "description": "A session identifier used for logging and tracing the assumed role session.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceAmazonDataFirehoseTls:ObservabilityPipelineConfigSourceAmazonDataFirehoseTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceAmazonS3:ObservabilityPipelineConfigSourceAmazonS3": {
            "properties": {
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceAmazonS3Auth:ObservabilityPipelineConfigSourceAmazonS3Auth",
                    "description": "AWS authentication credentials used for accessing AWS services. If omitted, the system's default credentials are used (for example, the IAM role and environment variables).\n"
                },
                "region": {
                    "type": "string",
                    "description": "AWS region where the S3 bucket resides.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceAmazonS3Tls:ObservabilityPipelineConfigSourceAmazonS3Tls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                },
                "urlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the S3 bucket URL.\n"
                }
            },
            "type": "object",
            "required": [
                "region"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceAmazonS3Auth:ObservabilityPipelineConfigSourceAmazonS3Auth": {
            "properties": {
                "assumeRole": {
                    "type": "string",
                    "description": "The Amazon Resource Name (ARN) of the role to assume.\n"
                },
                "externalId": {
                    "type": "string",
                    "description": "A unique identifier for cross-account role assumption.\n"
                },
                "sessionName": {
                    "type": "string",
                    "description": "A session identifier used for logging and tracing the assumed role session.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceAmazonS3Tls:ObservabilityPipelineConfigSourceAmazonS3Tls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceDatadogAgent:ObservabilityPipelineConfigSourceDatadogAgent": {
            "properties": {
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceDatadogAgentTls:ObservabilityPipelineConfigSourceDatadogAgentTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceDatadogAgentTls:ObservabilityPipelineConfigSourceDatadogAgentTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceFluentBit:ObservabilityPipelineConfigSourceFluentBit": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceFluentBitTls:ObservabilityPipelineConfigSourceFluentBitTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceFluentBitTls:ObservabilityPipelineConfigSourceFluentBitTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceFluentd:ObservabilityPipelineConfigSourceFluentd": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceFluentdTls:ObservabilityPipelineConfigSourceFluentdTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceFluentdTls:ObservabilityPipelineConfigSourceFluentdTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceGooglePubsub:ObservabilityPipelineConfigSourceGooglePubsub": {
            "properties": {
                "auth": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceGooglePubsubAuth:ObservabilityPipelineConfigSourceGooglePubsubAuth",
                    "description": "Google Cloud credentials used to authenticate with Google Cloud services.\n"
                },
                "decoding": {
                    "type": "string",
                    "description": "The decoding format used to interpret incoming logs.\n"
                },
                "project": {
                    "type": "string",
                    "description": "The Google Cloud project ID that owns the Pub/Sub subscription.\n"
                },
                "subscription": {
                    "type": "string",
                    "description": "The Pub/Sub subscription name from which messages are consumed.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceGooglePubsubTls:ObservabilityPipelineConfigSourceGooglePubsubTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object",
            "required": [
                "decoding",
                "project",
                "subscription"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceGooglePubsubAuth:ObservabilityPipelineConfigSourceGooglePubsubAuth": {
            "properties": {
                "credentialsFile": {
                    "type": "string",
                    "description": "Path to the Google Cloud service account key file.\n"
                }
            },
            "type": "object",
            "required": [
                "credentialsFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceGooglePubsubTls:ObservabilityPipelineConfigSourceGooglePubsubTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceHttpClient:ObservabilityPipelineConfigSourceHttpClient": {
            "properties": {
                "authStrategy": {
                    "type": "string",
                    "description": "Optional authentication strategy for HTTP requests. Valid values are \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`basic`\" pulumi-lang-dotnet=\"`Basic`\" pulumi-lang-go=\"`basic`\" pulumi-lang-python=\"`basic`\" pulumi-lang-yaml=\"`basic`\" pulumi-lang-java=\"`basic`\"\u003e`basic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bearer`\" pulumi-lang-dotnet=\"`Bearer`\" pulumi-lang-go=\"`bearer`\" pulumi-lang-python=\"`bearer`\" pulumi-lang-yaml=\"`bearer`\" pulumi-lang-java=\"`bearer`\"\u003e`bearer`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "customKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds a custom header value (used with custom auth strategies).\n"
                },
                "decoding": {
                    "type": "string",
                    "description": "The decoding format used to interpret incoming logs.\n"
                },
                "endpointUrlKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the HTTP endpoint URL.\n"
                },
                "passwordKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the password.\n"
                },
                "scrapeIntervalSecs": {
                    "type": "integer",
                    "description": "The interval (in seconds) between HTTP scrape requests.\n"
                },
                "scrapeTimeoutSecs": {
                    "type": "integer",
                    "description": "The timeout (in seconds) for each scrape request.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceHttpClientTls:ObservabilityPipelineConfigSourceHttpClientTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                },
                "tokenKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the authentication token.\n"
                },
                "usernameKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the username.\n"
                }
            },
            "type": "object",
            "required": [
                "decoding"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceHttpClientTls:ObservabilityPipelineConfigSourceHttpClientTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceHttpServer:ObservabilityPipelineConfigSourceHttpServer": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address.\n"
                },
                "authStrategy": {
                    "type": "string",
                    "description": "HTTP authentication method. Valid values are \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`plain`\" pulumi-lang-dotnet=\"`Plain`\" pulumi-lang-go=\"`plain`\" pulumi-lang-python=\"`plain`\" pulumi-lang-yaml=\"`plain`\" pulumi-lang-java=\"`plain`\"\u003e`plain`\u003c/span\u003e.\n"
                },
                "decoding": {
                    "type": "string",
                    "description": "The decoding format used to interpret incoming logs. Valid values are \u003cspan pulumi-lang-nodejs=\"`json`\" pulumi-lang-dotnet=\"`Json`\" pulumi-lang-go=\"`json`\" pulumi-lang-python=\"`json`\" pulumi-lang-yaml=\"`json`\" pulumi-lang-java=\"`json`\"\u003e`json`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gelf`\" pulumi-lang-dotnet=\"`Gelf`\" pulumi-lang-go=\"`gelf`\" pulumi-lang-python=\"`gelf`\" pulumi-lang-yaml=\"`gelf`\" pulumi-lang-java=\"`gelf`\"\u003e`gelf`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`syslog`\" pulumi-lang-dotnet=\"`Syslog`\" pulumi-lang-go=\"`syslog`\" pulumi-lang-python=\"`syslog`\" pulumi-lang-yaml=\"`syslog`\" pulumi-lang-java=\"`syslog`\"\u003e`syslog`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bytes`\" pulumi-lang-dotnet=\"`Bytes`\" pulumi-lang-go=\"`bytes`\" pulumi-lang-python=\"`bytes`\" pulumi-lang-yaml=\"`bytes`\" pulumi-lang-java=\"`bytes`\"\u003e`bytes`\u003c/span\u003e.\n"
                },
                "passwordKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the password.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceHttpServerTls:ObservabilityPipelineConfigSourceHttpServerTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                },
                "usernameKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the username.\n"
                }
            },
            "type": "object",
            "required": [
                "authStrategy",
                "decoding"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceHttpServerTls:ObservabilityPipelineConfigSourceHttpServerTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceKafka:ObservabilityPipelineConfigSourceKafka": {
            "properties": {
                "bootstrapServersKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the Kafka bootstrap servers connection string.\n"
                },
                "groupId": {
                    "type": "string",
                    "description": "The Kafka consumer group ID.\n"
                },
                "librdkafkaOptions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceKafkaLibrdkafkaOption:ObservabilityPipelineConfigSourceKafkaLibrdkafkaOption"
                    },
                    "description": "Advanced librdkafka client configuration options.\n"
                },
                "sasl": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceKafkaSasl:ObservabilityPipelineConfigSourceKafkaSasl",
                    "description": "SASL authentication settings.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceKafkaTls:ObservabilityPipelineConfigSourceKafkaTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                },
                "topics": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of Kafka topic names to subscribe to. The source ingests messages from each topic specified.\n"
                }
            },
            "type": "object",
            "required": [
                "groupId",
                "topics"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceKafkaLibrdkafkaOption:ObservabilityPipelineConfigSourceKafkaLibrdkafkaOption": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the librdkafka option.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value of the librdkafka option.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceKafkaSasl:ObservabilityPipelineConfigSourceKafkaSasl": {
            "properties": {
                "mechanism": {
                    "type": "string",
                    "description": "SASL mechanism to use (e.g., PLAIN, SCRAM-SHA-256, SCRAM-SHA-512). Valid values are `PLAIN`, `SCRAM-SHA-256`, `SCRAM-SHA-512`.\n"
                },
                "passwordKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the SASL password.\n"
                },
                "usernameKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the SASL username.\n"
                }
            },
            "type": "object",
            "required": [
                "mechanism"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceKafkaTls:ObservabilityPipelineConfigSourceKafkaTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceLogstash:ObservabilityPipelineConfigSourceLogstash": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceLogstashTls:ObservabilityPipelineConfigSourceLogstashTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceLogstashTls:ObservabilityPipelineConfigSourceLogstashTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceOpentelemetry:ObservabilityPipelineConfigSourceOpentelemetry": {
            "properties": {
                "grpcAddressKey": {
                    "type": "string",
                    "description": "Environment variable name containing the gRPC server address for receiving OTLP data.\n"
                },
                "httpAddressKey": {
                    "type": "string",
                    "description": "Environment variable name containing the HTTP server address for receiving OTLP data.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceOpentelemetryTls:ObservabilityPipelineConfigSourceOpentelemetryTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceOpentelemetryTls:ObservabilityPipelineConfigSourceOpentelemetryTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceRsyslog:ObservabilityPipelineConfigSourceRsyslog": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Protocol used by the syslog source to receive messages.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceRsyslogTls:ObservabilityPipelineConfigSourceRsyslogTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceRsyslogTls:ObservabilityPipelineConfigSourceRsyslogTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceSocket:ObservabilityPipelineConfigSourceSocket": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address for the socket.\n"
                },
                "framing": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSocketFraming:ObservabilityPipelineConfigSourceSocketFraming",
                    "description": "Defines the framing method for incoming messages.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "The protocol used to receive logs. Valid values are \u003cspan pulumi-lang-nodejs=\"`tcp`\" pulumi-lang-dotnet=\"`Tcp`\" pulumi-lang-go=\"`tcp`\" pulumi-lang-python=\"`tcp`\" pulumi-lang-yaml=\"`tcp`\" pulumi-lang-java=\"`tcp`\"\u003e`tcp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`udp`\" pulumi-lang-dotnet=\"`Udp`\" pulumi-lang-go=\"`udp`\" pulumi-lang-python=\"`udp`\" pulumi-lang-yaml=\"`udp`\" pulumi-lang-java=\"`udp`\"\u003e`udp`\u003c/span\u003e.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSocketTls:ObservabilityPipelineConfigSourceSocketTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object",
            "required": [
                "framing",
                "mode"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceSocketFraming:ObservabilityPipelineConfigSourceSocketFraming": {
            "properties": {
                "characterDelimited": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSocketFramingCharacterDelimited:ObservabilityPipelineConfigSourceSocketFramingCharacterDelimited",
                    "description": "Used when \u003cspan pulumi-lang-nodejs=\"`method`\" pulumi-lang-dotnet=\"`Method`\" pulumi-lang-go=\"`method`\" pulumi-lang-python=\"`method`\" pulumi-lang-yaml=\"`method`\" pulumi-lang-java=\"`method`\"\u003e`method`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`characterDelimited`\" pulumi-lang-dotnet=\"`CharacterDelimited`\" pulumi-lang-go=\"`characterDelimited`\" pulumi-lang-python=\"`character_delimited`\" pulumi-lang-yaml=\"`characterDelimited`\" pulumi-lang-java=\"`characterDelimited`\"\u003e`characterDelimited`\u003c/span\u003e. Specifies the delimiter character.\n"
                },
                "method": {
                    "type": "string",
                    "description": "The framing method. Valid values are \u003cspan pulumi-lang-nodejs=\"`newlineDelimited`\" pulumi-lang-dotnet=\"`NewlineDelimited`\" pulumi-lang-go=\"`newlineDelimited`\" pulumi-lang-python=\"`newline_delimited`\" pulumi-lang-yaml=\"`newlineDelimited`\" pulumi-lang-java=\"`newlineDelimited`\"\u003e`newlineDelimited`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bytes`\" pulumi-lang-dotnet=\"`Bytes`\" pulumi-lang-go=\"`bytes`\" pulumi-lang-python=\"`bytes`\" pulumi-lang-yaml=\"`bytes`\" pulumi-lang-java=\"`bytes`\"\u003e`bytes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`characterDelimited`\" pulumi-lang-dotnet=\"`CharacterDelimited`\" pulumi-lang-go=\"`characterDelimited`\" pulumi-lang-python=\"`character_delimited`\" pulumi-lang-yaml=\"`characterDelimited`\" pulumi-lang-java=\"`characterDelimited`\"\u003e`characterDelimited`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`octetCounting`\" pulumi-lang-dotnet=\"`OctetCounting`\" pulumi-lang-go=\"`octetCounting`\" pulumi-lang-python=\"`octet_counting`\" pulumi-lang-yaml=\"`octetCounting`\" pulumi-lang-java=\"`octetCounting`\"\u003e`octetCounting`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`chunkedGelf`\" pulumi-lang-dotnet=\"`ChunkedGelf`\" pulumi-lang-go=\"`chunkedGelf`\" pulumi-lang-python=\"`chunked_gelf`\" pulumi-lang-yaml=\"`chunkedGelf`\" pulumi-lang-java=\"`chunkedGelf`\"\u003e`chunkedGelf`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "method"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceSocketFramingCharacterDelimited:ObservabilityPipelineConfigSourceSocketFramingCharacterDelimited": {
            "properties": {
                "delimiter": {
                    "type": "string",
                    "description": "A single ASCII character used as a delimiter.\n"
                }
            },
            "type": "object",
            "required": [
                "delimiter"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceSocketTls:ObservabilityPipelineConfigSourceSocketTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceSplunkHec:ObservabilityPipelineConfigSourceSplunkHec": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address for the HEC API.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSplunkHecTls:ObservabilityPipelineConfigSourceSplunkHecTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceSplunkHecTls:ObservabilityPipelineConfigSourceSplunkHecTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceSplunkTcp:ObservabilityPipelineConfigSourceSplunkTcp": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address for the Splunk TCP receiver.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSplunkTcpTls:ObservabilityPipelineConfigSourceSplunkTcpTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceSplunkTcpTls:ObservabilityPipelineConfigSourceSplunkTcpTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/ObservabilityPipelineConfigSourceSumoLogic:ObservabilityPipelineConfigSourceSumoLogic": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceSyslogNg:ObservabilityPipelineConfigSourceSyslogNg": {
            "properties": {
                "addressKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the listen address.\n"
                },
                "mode": {
                    "type": "string",
                    "description": "Protocol used by the syslog source to receive messages.\n"
                },
                "tls": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfigSourceSyslogNgTls:ObservabilityPipelineConfigSourceSyslogNgTls",
                    "description": "Configuration for enabling TLS encryption between the pipeline component and external services.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ObservabilityPipelineConfigSourceSyslogNgTls:ObservabilityPipelineConfigSourceSyslogNgTls": {
            "properties": {
                "caFile": {
                    "type": "string",
                    "description": "Path to the Certificate Authority (CA) file used to validate the server's TLS certificate.\n"
                },
                "crtFile": {
                    "type": "string",
                    "description": "Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services.\n"
                },
                "keyFile": {
                    "type": "string",
                    "description": "Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication.\n"
                },
                "keyPassKey": {
                    "type": "string",
                    "description": "Name of the environment variable or secret that holds the passphrase for the private key file.\n"
                }
            },
            "type": "object",
            "required": [
                "crtFile"
            ]
        },
        "datadog:index/OnCallEscalationPolicyStep:OnCallEscalationPolicyStep": {
            "properties": {
                "assignment": {
                    "type": "string",
                    "description": "Specifies how this escalation step will assign targets. Can be \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e (page all targets at once) or `round-robin`. Valid values are \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e, `round-robin`. Defaults to `\"default\"`.\n"
                },
                "escalateAfterSeconds": {
                    "type": "integer",
                    "description": "Defines how many seconds to wait before escalating to the next step. Value must be between 60 and 36000.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of this step.\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallEscalationPolicyStepTarget:OnCallEscalationPolicyStepTarget"
                    },
                    "description": "List of targets for the step.\n"
                }
            },
            "type": "object",
            "required": [
                "escalateAfterSeconds",
                "targets"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "assignment",
                        "escalateAfterSeconds",
                        "id",
                        "targets"
                    ]
                }
            }
        },
        "datadog:index/OnCallEscalationPolicyStepTarget:OnCallEscalationPolicyStepTarget": {
            "properties": {
                "position": {
                    "type": "string",
                    "description": "For schedule targets, specifies which on-call user to page. Valid values: \u003cspan pulumi-lang-nodejs=\"`current`\" pulumi-lang-dotnet=\"`Current`\" pulumi-lang-go=\"`current`\" pulumi-lang-python=\"`current`\" pulumi-lang-yaml=\"`current`\" pulumi-lang-java=\"`current`\"\u003e`current`\u003c/span\u003e (default), \u003cspan pulumi-lang-nodejs=\"`previous`\" pulumi-lang-dotnet=\"`Previous`\" pulumi-lang-go=\"`previous`\" pulumi-lang-python=\"`previous`\" pulumi-lang-yaml=\"`previous`\" pulumi-lang-java=\"`previous`\"\u003e`previous`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`next`\" pulumi-lang-dotnet=\"`Next`\" pulumi-lang-go=\"`next`\" pulumi-lang-python=\"`next`\" pulumi-lang-yaml=\"`next`\" pulumi-lang-java=\"`next`\"\u003e`next`\u003c/span\u003e. Valid values are \u003cspan pulumi-lang-nodejs=\"`current`\" pulumi-lang-dotnet=\"`Current`\" pulumi-lang-go=\"`current`\" pulumi-lang-python=\"`current`\" pulumi-lang-yaml=\"`current`\" pulumi-lang-java=\"`current`\"\u003e`current`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`previous`\" pulumi-lang-dotnet=\"`Previous`\" pulumi-lang-go=\"`previous`\" pulumi-lang-python=\"`previous`\" pulumi-lang-yaml=\"`previous`\" pulumi-lang-java=\"`previous`\"\u003e`previous`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`next`\" pulumi-lang-dotnet=\"`Next`\" pulumi-lang-go=\"`next`\" pulumi-lang-python=\"`next`\" pulumi-lang-yaml=\"`next`\" pulumi-lang-java=\"`next`\"\u003e`next`\u003c/span\u003e.\n"
                },
                "schedule": {
                    "type": "string",
                    "description": "Targeted schedule ID.\n"
                },
                "team": {
                    "type": "string",
                    "description": "Targeted team ID.\n"
                },
                "user": {
                    "type": "string",
                    "description": "Targeted user ID.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OnCallScheduleLayer:OnCallScheduleLayer": {
            "properties": {
                "effectiveDate": {
                    "type": "string",
                    "description": "The date/time when this layer should become active (in ISO 8601).\n"
                },
                "endDate": {
                    "type": "string",
                    "description": "The date/time after which this layer no longer applies (in ISO 8601).\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of this layer.\n"
                },
                "interval": {
                    "$ref": "#/types/datadog:index/OnCallScheduleLayerInterval:OnCallScheduleLayerInterval",
                    "description": "Rotation interval for this layer.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of this layer. Should be unique within the schedule.\n"
                },
                "restrictions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallScheduleLayerRestriction:OnCallScheduleLayerRestriction"
                    },
                    "description": "List of restrictions for the layer.\n"
                },
                "rotationStart": {
                    "type": "string",
                    "description": "The date/time when the rotation for this layer starts (in ISO 8601).\n"
                },
                "timeZone": {
                    "type": "string",
                    "description": "The time zone for this layer. If not specified, the layer inherits the schedule's time zone.\n"
                },
                "users": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of user IDs for the layer. Can either be a valid user id or \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e to represent No-one.\n"
                }
            },
            "type": "object",
            "required": [
                "effectiveDate",
                "name",
                "rotationStart",
                "users"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "effectiveDate",
                        "id",
                        "name",
                        "rotationStart",
                        "users"
                    ]
                }
            }
        },
        "datadog:index/OnCallScheduleLayerInterval:OnCallScheduleLayerInterval": {
            "properties": {
                "days": {
                    "type": "integer",
                    "description": "The number of full days in each rotation period.\n"
                },
                "seconds": {
                    "type": "integer",
                    "description": "For intervals that are not expressible in whole days, this will be added to \u003cspan pulumi-lang-nodejs=\"`days`\" pulumi-lang-dotnet=\"`Days`\" pulumi-lang-go=\"`days`\" pulumi-lang-python=\"`days`\" pulumi-lang-yaml=\"`days`\" pulumi-lang-java=\"`days`\"\u003e`days`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "days",
                        "seconds"
                    ]
                }
            }
        },
        "datadog:index/OnCallScheduleLayerRestriction:OnCallScheduleLayerRestriction": {
            "properties": {
                "endDay": {
                    "type": "string",
                    "description": "The weekday when the restriction period ends. Valid values are \u003cspan pulumi-lang-nodejs=\"`monday`\" pulumi-lang-dotnet=\"`Monday`\" pulumi-lang-go=\"`monday`\" pulumi-lang-python=\"`monday`\" pulumi-lang-yaml=\"`monday`\" pulumi-lang-java=\"`monday`\"\u003e`monday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tuesday`\" pulumi-lang-dotnet=\"`Tuesday`\" pulumi-lang-go=\"`tuesday`\" pulumi-lang-python=\"`tuesday`\" pulumi-lang-yaml=\"`tuesday`\" pulumi-lang-java=\"`tuesday`\"\u003e`tuesday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`wednesday`\" pulumi-lang-dotnet=\"`Wednesday`\" pulumi-lang-go=\"`wednesday`\" pulumi-lang-python=\"`wednesday`\" pulumi-lang-yaml=\"`wednesday`\" pulumi-lang-java=\"`wednesday`\"\u003e`wednesday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thursday`\" pulumi-lang-dotnet=\"`Thursday`\" pulumi-lang-go=\"`thursday`\" pulumi-lang-python=\"`thursday`\" pulumi-lang-yaml=\"`thursday`\" pulumi-lang-java=\"`thursday`\"\u003e`thursday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`friday`\" pulumi-lang-dotnet=\"`Friday`\" pulumi-lang-go=\"`friday`\" pulumi-lang-python=\"`friday`\" pulumi-lang-yaml=\"`friday`\" pulumi-lang-java=\"`friday`\"\u003e`friday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`saturday`\" pulumi-lang-dotnet=\"`Saturday`\" pulumi-lang-go=\"`saturday`\" pulumi-lang-python=\"`saturday`\" pulumi-lang-yaml=\"`saturday`\" pulumi-lang-java=\"`saturday`\"\u003e`saturday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sunday`\" pulumi-lang-dotnet=\"`Sunday`\" pulumi-lang-go=\"`sunday`\" pulumi-lang-python=\"`sunday`\" pulumi-lang-yaml=\"`sunday`\" pulumi-lang-java=\"`sunday`\"\u003e`sunday`\u003c/span\u003e.\n"
                },
                "endTime": {
                    "type": "string",
                    "description": "The time of day when the restriction ends (hh:mm:ss).\n"
                },
                "startDay": {
                    "type": "string",
                    "description": "The weekday when the restriction period starts. Valid values are \u003cspan pulumi-lang-nodejs=\"`monday`\" pulumi-lang-dotnet=\"`Monday`\" pulumi-lang-go=\"`monday`\" pulumi-lang-python=\"`monday`\" pulumi-lang-yaml=\"`monday`\" pulumi-lang-java=\"`monday`\"\u003e`monday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tuesday`\" pulumi-lang-dotnet=\"`Tuesday`\" pulumi-lang-go=\"`tuesday`\" pulumi-lang-python=\"`tuesday`\" pulumi-lang-yaml=\"`tuesday`\" pulumi-lang-java=\"`tuesday`\"\u003e`tuesday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`wednesday`\" pulumi-lang-dotnet=\"`Wednesday`\" pulumi-lang-go=\"`wednesday`\" pulumi-lang-python=\"`wednesday`\" pulumi-lang-yaml=\"`wednesday`\" pulumi-lang-java=\"`wednesday`\"\u003e`wednesday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thursday`\" pulumi-lang-dotnet=\"`Thursday`\" pulumi-lang-go=\"`thursday`\" pulumi-lang-python=\"`thursday`\" pulumi-lang-yaml=\"`thursday`\" pulumi-lang-java=\"`thursday`\"\u003e`thursday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`friday`\" pulumi-lang-dotnet=\"`Friday`\" pulumi-lang-go=\"`friday`\" pulumi-lang-python=\"`friday`\" pulumi-lang-yaml=\"`friday`\" pulumi-lang-java=\"`friday`\"\u003e`friday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`saturday`\" pulumi-lang-dotnet=\"`Saturday`\" pulumi-lang-go=\"`saturday`\" pulumi-lang-python=\"`saturday`\" pulumi-lang-yaml=\"`saturday`\" pulumi-lang-java=\"`saturday`\"\u003e`saturday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sunday`\" pulumi-lang-dotnet=\"`Sunday`\" pulumi-lang-go=\"`sunday`\" pulumi-lang-python=\"`sunday`\" pulumi-lang-yaml=\"`sunday`\" pulumi-lang-java=\"`sunday`\"\u003e`sunday`\u003c/span\u003e.\n"
                },
                "startTime": {
                    "type": "string",
                    "description": "The time of day when the restriction begins (hh:mm:ss).\n"
                }
            },
            "type": "object",
            "required": [
                "endDay",
                "endTime",
                "startDay",
                "startTime"
            ]
        },
        "datadog:index/OnCallTeamRoutingRulesRule:OnCallTeamRoutingRulesRule": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallTeamRoutingRulesRuleAction:OnCallTeamRoutingRulesRuleAction"
                    },
                    "description": "Specifies the list of actions to perform when the routing rule is matched.\n"
                },
                "escalationPolicy": {
                    "type": "string",
                    "description": "ID of the policy to be applied when this routing rule matches.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of this rule.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Defines the query or condition that triggers this routing rule. Defaults to `\"\"`.\n"
                },
                "timeRestrictions": {
                    "$ref": "#/types/datadog:index/OnCallTeamRoutingRulesRuleTimeRestrictions:OnCallTeamRoutingRulesRuleTimeRestrictions",
                    "description": "Holds time zone information and a list of time restrictions for a routing rule.\n"
                },
                "urgency": {
                    "type": "string",
                    "description": "Defines the urgency for pages created via this rule. Only valid if \u003cspan pulumi-lang-nodejs=\"`escalationPolicy`\" pulumi-lang-dotnet=\"`EscalationPolicy`\" pulumi-lang-go=\"`escalationPolicy`\" pulumi-lang-python=\"`escalation_policy`\" pulumi-lang-yaml=\"`escalationPolicy`\" pulumi-lang-java=\"`escalationPolicy`\"\u003e`escalationPolicy`\u003c/span\u003e is set. Valid values are \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dynamic`\" pulumi-lang-dotnet=\"`Dynamic`\" pulumi-lang-go=\"`dynamic`\" pulumi-lang-python=\"`dynamic`\" pulumi-lang-yaml=\"`dynamic`\" pulumi-lang-java=\"`dynamic`\"\u003e`dynamic`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "query"
                    ]
                }
            }
        },
        "datadog:index/OnCallTeamRoutingRulesRuleAction:OnCallTeamRoutingRulesRuleAction": {
            "properties": {
                "sendSlackMessage": {
                    "$ref": "#/types/datadog:index/OnCallTeamRoutingRulesRuleActionSendSlackMessage:OnCallTeamRoutingRulesRuleActionSendSlackMessage"
                },
                "sendTeamsMessage": {
                    "$ref": "#/types/datadog:index/OnCallTeamRoutingRulesRuleActionSendTeamsMessage:OnCallTeamRoutingRulesRuleActionSendTeamsMessage"
                }
            },
            "type": "object"
        },
        "datadog:index/OnCallTeamRoutingRulesRuleActionSendSlackMessage:OnCallTeamRoutingRulesRuleActionSendSlackMessage": {
            "properties": {
                "channel": {
                    "type": "string",
                    "description": "Slack channel ID.\n"
                },
                "workspace": {
                    "type": "string",
                    "description": "Slack workspace ID.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OnCallTeamRoutingRulesRuleActionSendTeamsMessage:OnCallTeamRoutingRulesRuleActionSendTeamsMessage": {
            "properties": {
                "channel": {
                    "type": "string",
                    "description": "Teams channel ID.\n"
                },
                "team": {
                    "type": "string",
                    "description": "Teams team ID.\n"
                },
                "tenant": {
                    "type": "string",
                    "description": "Teams tenant ID.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OnCallTeamRoutingRulesRuleTimeRestrictions:OnCallTeamRoutingRulesRuleTimeRestrictions": {
            "properties": {
                "restrictions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallTeamRoutingRulesRuleTimeRestrictionsRestriction:OnCallTeamRoutingRulesRuleTimeRestrictionsRestriction"
                    },
                    "description": "List of restrictions for the rule.\n"
                },
                "timeZone": {
                    "type": "string",
                    "description": "Specifies the time zone applicable to the restrictions, e.g. `America/New_York`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OnCallTeamRoutingRulesRuleTimeRestrictionsRestriction:OnCallTeamRoutingRulesRuleTimeRestrictionsRestriction": {
            "properties": {
                "endDay": {
                    "type": "string",
                    "description": "The weekday when the restriction period ends. Valid values are \u003cspan pulumi-lang-nodejs=\"`monday`\" pulumi-lang-dotnet=\"`Monday`\" pulumi-lang-go=\"`monday`\" pulumi-lang-python=\"`monday`\" pulumi-lang-yaml=\"`monday`\" pulumi-lang-java=\"`monday`\"\u003e`monday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tuesday`\" pulumi-lang-dotnet=\"`Tuesday`\" pulumi-lang-go=\"`tuesday`\" pulumi-lang-python=\"`tuesday`\" pulumi-lang-yaml=\"`tuesday`\" pulumi-lang-java=\"`tuesday`\"\u003e`tuesday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`wednesday`\" pulumi-lang-dotnet=\"`Wednesday`\" pulumi-lang-go=\"`wednesday`\" pulumi-lang-python=\"`wednesday`\" pulumi-lang-yaml=\"`wednesday`\" pulumi-lang-java=\"`wednesday`\"\u003e`wednesday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thursday`\" pulumi-lang-dotnet=\"`Thursday`\" pulumi-lang-go=\"`thursday`\" pulumi-lang-python=\"`thursday`\" pulumi-lang-yaml=\"`thursday`\" pulumi-lang-java=\"`thursday`\"\u003e`thursday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`friday`\" pulumi-lang-dotnet=\"`Friday`\" pulumi-lang-go=\"`friday`\" pulumi-lang-python=\"`friday`\" pulumi-lang-yaml=\"`friday`\" pulumi-lang-java=\"`friday`\"\u003e`friday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`saturday`\" pulumi-lang-dotnet=\"`Saturday`\" pulumi-lang-go=\"`saturday`\" pulumi-lang-python=\"`saturday`\" pulumi-lang-yaml=\"`saturday`\" pulumi-lang-java=\"`saturday`\"\u003e`saturday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sunday`\" pulumi-lang-dotnet=\"`Sunday`\" pulumi-lang-go=\"`sunday`\" pulumi-lang-python=\"`sunday`\" pulumi-lang-yaml=\"`sunday`\" pulumi-lang-java=\"`sunday`\"\u003e`sunday`\u003c/span\u003e.\n"
                },
                "endTime": {
                    "type": "string",
                    "description": "The time of day when the restriction ends (hh:mm:ss).\n"
                },
                "startDay": {
                    "type": "string",
                    "description": "The weekday when the restriction period starts. Valid values are \u003cspan pulumi-lang-nodejs=\"`monday`\" pulumi-lang-dotnet=\"`Monday`\" pulumi-lang-go=\"`monday`\" pulumi-lang-python=\"`monday`\" pulumi-lang-yaml=\"`monday`\" pulumi-lang-java=\"`monday`\"\u003e`monday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tuesday`\" pulumi-lang-dotnet=\"`Tuesday`\" pulumi-lang-go=\"`tuesday`\" pulumi-lang-python=\"`tuesday`\" pulumi-lang-yaml=\"`tuesday`\" pulumi-lang-java=\"`tuesday`\"\u003e`tuesday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`wednesday`\" pulumi-lang-dotnet=\"`Wednesday`\" pulumi-lang-go=\"`wednesday`\" pulumi-lang-python=\"`wednesday`\" pulumi-lang-yaml=\"`wednesday`\" pulumi-lang-java=\"`wednesday`\"\u003e`wednesday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thursday`\" pulumi-lang-dotnet=\"`Thursday`\" pulumi-lang-go=\"`thursday`\" pulumi-lang-python=\"`thursday`\" pulumi-lang-yaml=\"`thursday`\" pulumi-lang-java=\"`thursday`\"\u003e`thursday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`friday`\" pulumi-lang-dotnet=\"`Friday`\" pulumi-lang-go=\"`friday`\" pulumi-lang-python=\"`friday`\" pulumi-lang-yaml=\"`friday`\" pulumi-lang-java=\"`friday`\"\u003e`friday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`saturday`\" pulumi-lang-dotnet=\"`Saturday`\" pulumi-lang-go=\"`saturday`\" pulumi-lang-python=\"`saturday`\" pulumi-lang-yaml=\"`saturday`\" pulumi-lang-java=\"`saturday`\"\u003e`saturday`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sunday`\" pulumi-lang-dotnet=\"`Sunday`\" pulumi-lang-go=\"`sunday`\" pulumi-lang-python=\"`sunday`\" pulumi-lang-yaml=\"`sunday`\" pulumi-lang-java=\"`sunday`\"\u003e`sunday`\u003c/span\u003e.\n"
                },
                "startTime": {
                    "type": "string",
                    "description": "The time of day when the restriction begins (hh:mm:ss).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OnCallUserNotificationChannelEmail:OnCallUserNotificationChannelEmail": {
            "properties": {
                "address": {
                    "type": "string",
                    "description": "The e-mail address to be notified\n"
                },
                "formats": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Preferred content formats for notifications\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OnCallUserNotificationChannelPhone:OnCallUserNotificationChannelPhone": {
            "properties": {
                "number": {
                    "type": "string",
                    "description": "The E-164 formatted phone number (e.g. +3371234567)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OnCallUserNotificationRulePhone:OnCallUserNotificationRulePhone": {
            "properties": {
                "method": {
                    "type": "string",
                    "description": "Specifies the method in which a phone is used in a notification rule. Valid values are \u003cspan pulumi-lang-nodejs=\"`sms`\" pulumi-lang-dotnet=\"`Sms`\" pulumi-lang-go=\"`sms`\" pulumi-lang-python=\"`sms`\" pulumi-lang-yaml=\"`sms`\" pulumi-lang-java=\"`sms`\"\u003e`sms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`voice`\" pulumi-lang-dotnet=\"`Voice`\" pulumi-lang-go=\"`voice`\" pulumi-lang-python=\"`voice`\" pulumi-lang-yaml=\"`voice`\" pulumi-lang-java=\"`voice`\"\u003e`voice`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OrganizationSettingsSettings:OrganizationSettingsSettings": {
            "properties": {
                "privateWidgetShare": {
                    "type": "boolean",
                    "description": "Whether or not the organization users can share widgets outside of Datadog. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "saml": {
                    "$ref": "#/types/datadog:index/OrganizationSettingsSettingsSaml:OrganizationSettingsSettingsSaml",
                    "description": "SAML properties\n"
                },
                "samlAutocreateAccessRole": {
                    "type": "string",
                    "description": "The access role of the user. Options are \u003cspan pulumi-lang-nodejs=\"`st`\" pulumi-lang-dotnet=\"`St`\" pulumi-lang-go=\"`st`\" pulumi-lang-python=\"`st`\" pulumi-lang-yaml=\"`st`\" pulumi-lang-java=\"`st`\"\u003e`st`\u003c/span\u003e (standard user), \u003cspan pulumi-lang-nodejs=\"`adm`\" pulumi-lang-dotnet=\"`Adm`\" pulumi-lang-go=\"`adm`\" pulumi-lang-python=\"`adm`\" pulumi-lang-yaml=\"`adm`\" pulumi-lang-java=\"`adm`\"\u003e`adm`\u003c/span\u003e (admin user), or \u003cspan pulumi-lang-nodejs=\"`ro`\" pulumi-lang-dotnet=\"`Ro`\" pulumi-lang-go=\"`ro`\" pulumi-lang-python=\"`ro`\" pulumi-lang-yaml=\"`ro`\" pulumi-lang-java=\"`ro`\"\u003e`ro`\u003c/span\u003e (read-only user). Allowed enum values: \u003cspan pulumi-lang-nodejs=\"`st`\" pulumi-lang-dotnet=\"`St`\" pulumi-lang-go=\"`st`\" pulumi-lang-python=\"`st`\" pulumi-lang-yaml=\"`st`\" pulumi-lang-java=\"`st`\"\u003e`st`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`adm`\" pulumi-lang-dotnet=\"`Adm`\" pulumi-lang-go=\"`adm`\" pulumi-lang-python=\"`adm`\" pulumi-lang-yaml=\"`adm`\" pulumi-lang-java=\"`adm`\"\u003e`adm`\u003c/span\u003e , \u003cspan pulumi-lang-nodejs=\"`ro`\" pulumi-lang-dotnet=\"`Ro`\" pulumi-lang-go=\"`ro`\" pulumi-lang-python=\"`ro`\" pulumi-lang-yaml=\"`ro`\" pulumi-lang-java=\"`ro`\"\u003e`ro`\u003c/span\u003e, `ERROR` Defaults to `\"st\"`.\n"
                },
                "samlAutocreateUsersDomains": {
                    "$ref": "#/types/datadog:index/OrganizationSettingsSettingsSamlAutocreateUsersDomains:OrganizationSettingsSettingsSamlAutocreateUsersDomains",
                    "description": "List of domains where the SAML automated user creation is enabled.\n"
                },
                "samlCanBeEnabled": {
                    "type": "boolean",
                    "description": "Whether or not SAML can be enabled for this organization.\n"
                },
                "samlIdpEndpoint": {
                    "type": "string",
                    "description": "Identity provider endpoint for SAML authentication.\n"
                },
                "samlIdpInitiatedLogin": {
                    "$ref": "#/types/datadog:index/OrganizationSettingsSettingsSamlIdpInitiatedLogin:OrganizationSettingsSettingsSamlIdpInitiatedLogin",
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization.\n"
                },
                "samlIdpMetadataUploaded": {
                    "type": "boolean",
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization.\n"
                },
                "samlLoginUrl": {
                    "type": "string",
                    "description": "URL for SAML logging.\n"
                },
                "samlStrictMode": {
                    "$ref": "#/types/datadog:index/OrganizationSettingsSettingsSamlStrictMode:OrganizationSettingsSettingsSamlStrictMode",
                    "description": "Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML.\n"
                }
            },
            "type": "object",
            "required": [
                "saml",
                "samlAutocreateUsersDomains",
                "samlIdpInitiatedLogin",
                "samlStrictMode"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "saml",
                        "samlAutocreateUsersDomains",
                        "samlCanBeEnabled",
                        "samlIdpEndpoint",
                        "samlIdpInitiatedLogin",
                        "samlIdpMetadataUploaded",
                        "samlLoginUrl",
                        "samlStrictMode"
                    ]
                }
            }
        },
        "datadog:index/OrganizationSettingsSettingsSaml:OrganizationSettingsSettingsSaml": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not SAML is enabled for this organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OrganizationSettingsSettingsSamlAutocreateUsersDomains:OrganizationSettingsSettingsSamlAutocreateUsersDomains": {
            "properties": {
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of domains where the SAML automated user creation is enabled.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the automated user creation based on SAML domain is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OrganizationSettingsSettingsSamlIdpInitiatedLogin:OrganizationSettingsSettingsSamlIdpInitiatedLogin": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/OrganizationSettingsSettingsSamlStrictMode:OrganizationSettingsSettingsSamlStrictMode": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackLayout:PowerpackLayout": {
            "properties": {
                "height": {
                    "type": "integer",
                    "description": "The height of the widget.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the widget.\n"
                },
                "x": {
                    "type": "integer",
                    "description": "The position of the widget on the x (horizontal) axis. Should be greater than or equal to 0.\n"
                },
                "y": {
                    "type": "integer",
                    "description": "The position of the widget on the y (vertical) axis. Should be greater than or equal to 0.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "height",
                        "width",
                        "x",
                        "y"
                    ]
                }
            }
        },
        "datadog:index/PowerpackTemplateVariable:PowerpackTemplateVariable": {
            "properties": {
                "defaults": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "One or many default values for powerpack template variables on load. If more than one default is specified, they will be unioned together with `OR`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the powerpack template variable.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "datadog:index/PowerpackWidget:PowerpackWidget": {
            "properties": {
                "alertGraphDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetAlertGraphDefinition:PowerpackWidgetAlertGraphDefinition",
                    "description": "The definition for a Alert Graph widget.\n"
                },
                "alertValueDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetAlertValueDefinition:PowerpackWidgetAlertValueDefinition",
                    "description": "The definition for a Alert Value widget.\n"
                },
                "changeDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinition:PowerpackWidgetChangeDefinition",
                    "description": "The definition for a Change widget.\n"
                },
                "checkStatusDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetCheckStatusDefinition:PowerpackWidgetCheckStatusDefinition",
                    "description": "The definition for a Check Status widget.\n"
                },
                "distributionDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinition:PowerpackWidgetDistributionDefinition",
                    "description": "The definition for a Distribution widget.\n"
                },
                "eventStreamDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetEventStreamDefinition:PowerpackWidgetEventStreamDefinition",
                    "description": "The definition for a Event Stream widget.\n"
                },
                "eventTimelineDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetEventTimelineDefinition:PowerpackWidgetEventTimelineDefinition",
                    "description": "The definition for a Event Timeline widget.\n"
                },
                "freeTextDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetFreeTextDefinition:PowerpackWidgetFreeTextDefinition",
                    "description": "The definition for a Free Text widget.\n"
                },
                "geomapDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinition:PowerpackWidgetGeomapDefinition",
                    "description": "The definition for a Geomap widget.\n"
                },
                "heatmapDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinition:PowerpackWidgetHeatmapDefinition",
                    "description": "The definition for a Heatmap widget.\n"
                },
                "hostmapDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinition:PowerpackWidgetHostmapDefinition",
                    "description": "The definition for a Hostmap widget.\n"
                },
                "id": {
                    "type": "integer",
                    "description": "The ID of the widget.\n"
                },
                "iframeDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetIframeDefinition:PowerpackWidgetIframeDefinition",
                    "description": "The definition for an Iframe widget.\n"
                },
                "imageDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetImageDefinition:PowerpackWidgetImageDefinition",
                    "description": "The definition for an Image widget\n"
                },
                "listStreamDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetListStreamDefinition:PowerpackWidgetListStreamDefinition",
                    "description": "The definition for a List Stream widget.\n"
                },
                "logStreamDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetLogStreamDefinition:PowerpackWidgetLogStreamDefinition",
                    "description": "The definition for an Log Stream widget.\n"
                },
                "manageStatusDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetManageStatusDefinition:PowerpackWidgetManageStatusDefinition",
                    "description": "The definition for an Manage Status widget.\n"
                },
                "noteDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetNoteDefinition:PowerpackWidgetNoteDefinition",
                    "description": "The definition for a Note widget.\n"
                },
                "queryTableDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinition:PowerpackWidgetQueryTableDefinition",
                    "description": "The definition for a Query Table widget.\n"
                },
                "queryValueDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinition:PowerpackWidgetQueryValueDefinition",
                    "description": "The definition for a Query Value widget.\n"
                },
                "runWorkflowDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetRunWorkflowDefinition:PowerpackWidgetRunWorkflowDefinition",
                    "description": "The definition for a Run Workflow widget.\n"
                },
                "scatterplotDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinition:PowerpackWidgetScatterplotDefinition",
                    "description": "The definition for a Scatterplot widget.\n"
                },
                "serviceLevelObjectiveDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetServiceLevelObjectiveDefinition:PowerpackWidgetServiceLevelObjectiveDefinition",
                    "description": "The definition for a Service Level Objective widget.\n"
                },
                "servicemapDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetServicemapDefinition:PowerpackWidgetServicemapDefinition",
                    "description": "The definition for a Service Map widget.\n"
                },
                "sloListDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSloListDefinition:PowerpackWidgetSloListDefinition",
                    "description": "The definition for an SLO (Service Level Objective) List widget.\n"
                },
                "sunburstDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinition:PowerpackWidgetSunburstDefinition",
                    "description": "The definition for a Sunburst widget.\n"
                },
                "timeseriesDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinition:PowerpackWidgetTimeseriesDefinition",
                    "description": "The definition for a Timeseries widget.\n"
                },
                "toplistDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinition:PowerpackWidgetToplistDefinition",
                    "description": "The definition for a Toplist widget.\n"
                },
                "topologyMapDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTopologyMapDefinition:PowerpackWidgetTopologyMapDefinition",
                    "description": "The definition for a Topology Map widget.\n"
                },
                "traceServiceDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTraceServiceDefinition:PowerpackWidgetTraceServiceDefinition",
                    "description": "The definition for a Trace Service widget.\n"
                },
                "treemapDefinition": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinition:PowerpackWidgetTreemapDefinition",
                    "description": "The definition for a Treemap widget.\n"
                },
                "widgetLayout": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetWidgetLayout:PowerpackWidgetWidgetLayout",
                    "description": "The layout of the widget on a 'free' dashboard.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetAlertGraphDefinition:PowerpackWidgetAlertGraphDefinition": {
            "properties": {
                "alertId": {
                    "type": "string",
                    "description": "The ID of the monitor used by the widget.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "vizType": {
                    "type": "string",
                    "description": "Type of visualization to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`timeseries`\" pulumi-lang-dotnet=\"`Timeseries`\" pulumi-lang-go=\"`timeseries`\" pulumi-lang-python=\"`timeseries`\" pulumi-lang-yaml=\"`timeseries`\" pulumi-lang-java=\"`timeseries`\"\u003e`timeseries`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`toplist`\" pulumi-lang-dotnet=\"`Toplist`\" pulumi-lang-go=\"`toplist`\" pulumi-lang-python=\"`toplist`\" pulumi-lang-yaml=\"`toplist`\" pulumi-lang-java=\"`toplist`\"\u003e`toplist`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "alertId",
                "vizType"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "alertId",
                        "hideIncompleteCostData",
                        "vizType"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetAlertValueDefinition:PowerpackWidgetAlertValueDefinition": {
            "properties": {
                "alertId": {
                    "type": "string",
                    "description": "The ID of the monitor used by the widget.\n"
                },
                "precision": {
                    "type": "integer",
                    "description": "The precision to use when displaying the value. Use `*` for maximum precision.\n"
                },
                "textAlign": {
                    "type": "string",
                    "description": "The alignment of the text in the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "unit": {
                    "type": "string",
                    "description": "The unit for the value displayed in the widget.\n"
                }
            },
            "type": "object",
            "required": [
                "alertId"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinition:PowerpackWidgetChangeDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionCustomLink:PowerpackWidgetChangeDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequest:PowerpackWidgetChangeDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetChangeDefinitionCustomLink:PowerpackWidgetChangeDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequest:PowerpackWidgetChangeDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestApmQuery:PowerpackWidgetChangeDefinitionRequestApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "changeType": {
                    "type": "string",
                    "description": "Whether to show absolute or relative change. Valid values are \u003cspan pulumi-lang-nodejs=\"`absolute`\" pulumi-lang-dotnet=\"`Absolute`\" pulumi-lang-go=\"`absolute`\" pulumi-lang-python=\"`absolute`\" pulumi-lang-yaml=\"`absolute`\" pulumi-lang-java=\"`absolute`\"\u003e`absolute`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`relative`\" pulumi-lang-dotnet=\"`Relative`\" pulumi-lang-go=\"`relative`\" pulumi-lang-python=\"`relative`\" pulumi-lang-yaml=\"`relative`\" pulumi-lang-java=\"`relative`\"\u003e`relative`\u003c/span\u003e.\n"
                },
                "compareTo": {
                    "type": "string",
                    "description": "Choose from when to compare current data to. Valid values are \u003cspan pulumi-lang-nodejs=\"`hourBefore`\" pulumi-lang-dotnet=\"`HourBefore`\" pulumi-lang-go=\"`hourBefore`\" pulumi-lang-python=\"`hour_before`\" pulumi-lang-yaml=\"`hourBefore`\" pulumi-lang-java=\"`hourBefore`\"\u003e`hourBefore`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dayBefore`\" pulumi-lang-dotnet=\"`DayBefore`\" pulumi-lang-go=\"`dayBefore`\" pulumi-lang-python=\"`day_before`\" pulumi-lang-yaml=\"`dayBefore`\" pulumi-lang-java=\"`dayBefore`\"\u003e`dayBefore`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekBefore`\" pulumi-lang-dotnet=\"`WeekBefore`\" pulumi-lang-go=\"`weekBefore`\" pulumi-lang-python=\"`week_before`\" pulumi-lang-yaml=\"`weekBefore`\" pulumi-lang-java=\"`weekBefore`\"\u003e`weekBefore`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthBefore`\" pulumi-lang-dotnet=\"`MonthBefore`\" pulumi-lang-go=\"`monthBefore`\" pulumi-lang-python=\"`month_before`\" pulumi-lang-yaml=\"`monthBefore`\" pulumi-lang-java=\"`monthBefore`\"\u003e`monthBefore`\u003c/span\u003e.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormula:PowerpackWidgetChangeDefinitionRequestFormula"
                    }
                },
                "increaseGood": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red).\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestLogQuery:PowerpackWidgetChangeDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "orderBy": {
                    "type": "string",
                    "description": "What to order by. Valid values are \u003cspan pulumi-lang-nodejs=\"`change`\" pulumi-lang-dotnet=\"`Change`\" pulumi-lang-go=\"`change`\" pulumi-lang-python=\"`change`\" pulumi-lang-yaml=\"`change`\" pulumi-lang-java=\"`change`\"\u003e`change`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`present`\" pulumi-lang-dotnet=\"`Present`\" pulumi-lang-go=\"`present`\" pulumi-lang-python=\"`present`\" pulumi-lang-yaml=\"`present`\" pulumi-lang-java=\"`present`\"\u003e`present`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`past`\" pulumi-lang-dotnet=\"`Past`\" pulumi-lang-go=\"`past`\" pulumi-lang-python=\"`past`\" pulumi-lang-yaml=\"`past`\" pulumi-lang-java=\"`past`\"\u003e`past`\u003c/span\u003e.\n"
                },
                "orderDir": {
                    "type": "string",
                    "description": "Widget sorting method. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestProcessQuery:PowerpackWidgetChangeDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQuery:PowerpackWidgetChangeDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestRumQuery:PowerpackWidgetChangeDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQuery:PowerpackWidgetChangeDefinitionRequestSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "showPresent": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, displays the current value.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestApmQuery:PowerpackWidgetChangeDefinitionRequestApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestApmQueryComputeQuery:PowerpackWidgetChangeDefinitionRequestApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestApmQueryGroupBy:PowerpackWidgetChangeDefinitionRequestApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestApmQueryMultiCompute:PowerpackWidgetChangeDefinitionRequestApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestApmQueryComputeQuery:PowerpackWidgetChangeDefinitionRequestApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestApmQueryGroupBy:PowerpackWidgetChangeDefinitionRequestApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetChangeDefinitionRequestApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetChangeDefinitionRequestApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestApmQueryMultiCompute:PowerpackWidgetChangeDefinitionRequestApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormula:PowerpackWidgetChangeDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaConditionalFormat:PowerpackWidgetChangeDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaLimit:PowerpackWidgetChangeDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormat:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaStyle:PowerpackWidgetChangeDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaConditionalFormat:PowerpackWidgetChangeDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaLimit:PowerpackWidgetChangeDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormat:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetChangeDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestFormulaStyle:PowerpackWidgetChangeDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestLogQuery:PowerpackWidgetChangeDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestLogQueryComputeQuery:PowerpackWidgetChangeDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestLogQueryGroupBy:PowerpackWidgetChangeDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestLogQueryMultiCompute:PowerpackWidgetChangeDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestLogQueryComputeQuery:PowerpackWidgetChangeDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestLogQueryGroupBy:PowerpackWidgetChangeDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetChangeDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetChangeDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestLogQueryMultiCompute:PowerpackWidgetChangeDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestProcessQuery:PowerpackWidgetChangeDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQuery:PowerpackWidgetChangeDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetChangeDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetChangeDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryCloudCostQuery:PowerpackWidgetChangeDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQuery:PowerpackWidgetChangeDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryMetricQuery:PowerpackWidgetChangeDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryProcessQuery:PowerpackWidgetChangeDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQuerySloQuery:PowerpackWidgetChangeDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetChangeDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetChangeDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryCloudCostQuery:PowerpackWidgetChangeDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQuery:PowerpackWidgetChangeDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryCompute:PowerpackWidgetChangeDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQuerySearch:PowerpackWidgetChangeDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryCompute:PowerpackWidgetChangeDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetChangeDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryEventQuerySearch:PowerpackWidgetChangeDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryMetricQuery:PowerpackWidgetChangeDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQueryProcessQuery:PowerpackWidgetChangeDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestQuerySloQuery:PowerpackWidgetChangeDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestRumQuery:PowerpackWidgetChangeDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestRumQueryComputeQuery:PowerpackWidgetChangeDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestRumQueryGroupBy:PowerpackWidgetChangeDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestRumQueryMultiCompute:PowerpackWidgetChangeDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestRumQueryComputeQuery:PowerpackWidgetChangeDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestRumQueryGroupBy:PowerpackWidgetChangeDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetChangeDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetChangeDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestRumQueryMultiCompute:PowerpackWidgetChangeDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQuery:PowerpackWidgetChangeDefinitionRequestSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetChangeDefinitionRequestSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetChangeDefinitionRequestSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetChangeDefinitionRequestSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetChangeDefinitionRequestSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetChangeDefinitionRequestSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetChangeDefinitionRequestSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetChangeDefinitionRequestSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetChangeDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetChangeDefinitionRequestSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetCheckStatusDefinition:PowerpackWidgetCheckStatusDefinition": {
            "properties": {
                "check": {
                    "type": "string",
                    "description": "The check to use in the widget.\n"
                },
                "group": {
                    "type": "string",
                    "description": "The check group to use in the widget.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "When `grouping = \"cluster\"`, indicates a list of tags to use for grouping.\n"
                },
                "grouping": {
                    "type": "string",
                    "description": "The kind of grouping to use. Valid values are \u003cspan pulumi-lang-nodejs=\"`check`\" pulumi-lang-dotnet=\"`Check`\" pulumi-lang-go=\"`check`\" pulumi-lang-python=\"`check`\" pulumi-lang-yaml=\"`check`\" pulumi-lang-java=\"`check`\"\u003e`check`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags to use in the widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "check",
                "grouping"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "check",
                        "grouping",
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetDistributionDefinition:PowerpackWidgetDistributionDefinition": {
            "properties": {
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "legendSize": {
                    "type": "string",
                    "description": "The size of the legend displayed in the widget.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequest:PowerpackWidgetDistributionDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                },
                "showLegend": {
                    "type": "boolean",
                    "description": "Whether or not to show the legend on this widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "xaxis": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionXaxis:PowerpackWidgetDistributionDefinitionXaxis",
                    "description": "A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionYaxis:PowerpackWidgetDistributionDefinitionYaxis",
                    "description": "A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequest:PowerpackWidgetDistributionDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQuery:PowerpackWidgetDistributionDefinitionRequestApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "apmStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestApmStatsQuery:PowerpackWidgetDistributionDefinitionRequestApmStatsQuery"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQuery:PowerpackWidgetDistributionDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestProcessQuery:PowerpackWidgetDistributionDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQuery:PowerpackWidgetDistributionDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQuery:PowerpackWidgetDistributionDefinitionRequestSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestStyle:PowerpackWidgetDistributionDefinitionRequestStyle",
                    "description": "The style of the widget graph. One nested block is allowed using the structure below.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQuery:PowerpackWidgetDistributionDefinitionRequestApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQueryComputeQuery:PowerpackWidgetDistributionDefinitionRequestApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQueryGroupBy:PowerpackWidgetDistributionDefinitionRequestApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQueryMultiCompute:PowerpackWidgetDistributionDefinitionRequestApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQueryComputeQuery:PowerpackWidgetDistributionDefinitionRequestApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQueryGroupBy:PowerpackWidgetDistributionDefinitionRequestApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetDistributionDefinitionRequestApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetDistributionDefinitionRequestApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestApmQueryMultiCompute:PowerpackWidgetDistributionDefinitionRequestApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestApmStatsQuery:PowerpackWidgetDistributionDefinitionRequestApmStatsQuery": {
            "properties": {
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestApmStatsQueryColumn:PowerpackWidgetDistributionDefinitionRequestApmStatsQueryColumn"
                    },
                    "description": "Column properties used by the front end for display.\n"
                },
                "env": {
                    "type": "string",
                    "description": "The environment name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The operation name associated with the service.\n"
                },
                "primaryTag": {
                    "type": "string",
                    "description": "The organization's host group name and value.\n"
                },
                "resource": {
                    "type": "string",
                    "description": "The resource name.\n"
                },
                "rowType": {
                    "type": "string",
                    "description": "The level of detail for the request. Valid values are \u003cspan pulumi-lang-nodejs=\"`service`\" pulumi-lang-dotnet=\"`Service`\" pulumi-lang-go=\"`service`\" pulumi-lang-python=\"`service`\" pulumi-lang-yaml=\"`service`\" pulumi-lang-java=\"`service`\"\u003e`service`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`resource`\" pulumi-lang-dotnet=\"`Resource`\" pulumi-lang-go=\"`resource`\" pulumi-lang-python=\"`resource`\" pulumi-lang-yaml=\"`resource`\" pulumi-lang-java=\"`resource`\"\u003e`resource`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`span`\" pulumi-lang-dotnet=\"`Span`\" pulumi-lang-go=\"`span`\" pulumi-lang-python=\"`span`\" pulumi-lang-yaml=\"`span`\" pulumi-lang-java=\"`span`\"\u003e`span`\u003c/span\u003e.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The service name.\n"
                }
            },
            "type": "object",
            "required": [
                "env",
                "name",
                "primaryTag",
                "rowType",
                "service"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestApmStatsQueryColumn:PowerpackWidgetDistributionDefinitionRequestApmStatsQueryColumn": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "A user-assigned alias for the column.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The column name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQuery:PowerpackWidgetDistributionDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQueryComputeQuery:PowerpackWidgetDistributionDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQueryGroupBy:PowerpackWidgetDistributionDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQueryMultiCompute:PowerpackWidgetDistributionDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQueryComputeQuery:PowerpackWidgetDistributionDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQueryGroupBy:PowerpackWidgetDistributionDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetDistributionDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetDistributionDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestLogQueryMultiCompute:PowerpackWidgetDistributionDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestProcessQuery:PowerpackWidgetDistributionDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQuery:PowerpackWidgetDistributionDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQueryComputeQuery:PowerpackWidgetDistributionDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQueryGroupBy:PowerpackWidgetDistributionDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQueryMultiCompute:PowerpackWidgetDistributionDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQueryComputeQuery:PowerpackWidgetDistributionDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQueryGroupBy:PowerpackWidgetDistributionDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetDistributionDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetDistributionDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestRumQueryMultiCompute:PowerpackWidgetDistributionDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQuery:PowerpackWidgetDistributionDefinitionRequestSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetDistributionDefinitionRequestSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetDistributionDefinitionRequestSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetDistributionDefinitionRequestSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetDistributionDefinitionRequestSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetDistributionDefinitionRequestSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetDistributionDefinitionRequestSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetDistributionDefinitionRequestSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetDistributionDefinitionRequestSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionRequestStyle:PowerpackWidgetDistributionDefinitionRequestStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionXaxis:PowerpackWidgetDistributionDefinitionXaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetDistributionDefinitionYaxis:PowerpackWidgetDistributionDefinitionYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetEventStreamDefinition:PowerpackWidgetEventStreamDefinition": {
            "properties": {
                "eventSize": {
                    "type": "string",
                    "description": "The size to use to display an event. Valid values are \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l`\" pulumi-lang-dotnet=\"`L`\" pulumi-lang-go=\"`l`\" pulumi-lang-python=\"`l`\" pulumi-lang-yaml=\"`l`\" pulumi-lang-java=\"`l`\"\u003e`l`\u003c/span\u003e.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query to use in the widget.\n"
                },
                "tagsExecution": {
                    "type": "string",
                    "description": "The execution method for multi-value filters, options: \u003cspan pulumi-lang-nodejs=\"`and`\" pulumi-lang-dotnet=\"`And`\" pulumi-lang-go=\"`and`\" pulumi-lang-python=\"`and`\" pulumi-lang-yaml=\"`and`\" pulumi-lang-java=\"`and`\"\u003e`and`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`or`\" pulumi-lang-dotnet=\"`Or`\" pulumi-lang-go=\"`or`\" pulumi-lang-python=\"`or`\" pulumi-lang-yaml=\"`or`\" pulumi-lang-java=\"`or`\"\u003e`or`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "query"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetEventTimelineDefinition:PowerpackWidgetEventTimelineDefinition": {
            "properties": {
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query to use in the widget.\n"
                },
                "tagsExecution": {
                    "type": "string",
                    "description": "The execution method for multi-value filters, options: \u003cspan pulumi-lang-nodejs=\"`and`\" pulumi-lang-dotnet=\"`And`\" pulumi-lang-go=\"`and`\" pulumi-lang-python=\"`and`\" pulumi-lang-yaml=\"`and`\" pulumi-lang-java=\"`and`\"\u003e`and`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`or`\" pulumi-lang-dotnet=\"`Or`\" pulumi-lang-go=\"`or`\" pulumi-lang-python=\"`or`\" pulumi-lang-yaml=\"`or`\" pulumi-lang-java=\"`or`\"\u003e`or`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "query"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetFreeTextDefinition:PowerpackWidgetFreeTextDefinition": {
            "properties": {
                "color": {
                    "type": "string",
                    "description": "The color of the text in the widget.\n"
                },
                "fontSize": {
                    "type": "string",
                    "description": "The size of the text in the widget.\n"
                },
                "text": {
                    "type": "string",
                    "description": "The text to display in the widget.\n"
                },
                "textAlign": {
                    "type": "string",
                    "description": "The alignment of the text in the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "text"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinition:PowerpackWidgetGeomapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionCustomLink:PowerpackWidgetGeomapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequest:PowerpackWidgetGeomapDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionStyle:PowerpackWidgetGeomapDefinitionStyle",
                    "description": "The style of the widget graph. One nested block is allowed using the structure below.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "view": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionView:PowerpackWidgetGeomapDefinitionView",
                    "description": "The view of the world that the map should render.\n"
                }
            },
            "type": "object",
            "required": [
                "view"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "view"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionCustomLink:PowerpackWidgetGeomapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequest:PowerpackWidgetGeomapDefinitionRequest": {
            "properties": {
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormula:PowerpackWidgetGeomapDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQuery:PowerpackWidgetGeomapDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQuery:PowerpackWidgetGeomapDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQuery:PowerpackWidgetGeomapDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormula:PowerpackWidgetGeomapDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaConditionalFormat:PowerpackWidgetGeomapDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaLimit:PowerpackWidgetGeomapDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormat:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaStyle:PowerpackWidgetGeomapDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaConditionalFormat:PowerpackWidgetGeomapDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaLimit:PowerpackWidgetGeomapDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormat:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetGeomapDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestFormulaStyle:PowerpackWidgetGeomapDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQuery:PowerpackWidgetGeomapDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQueryComputeQuery:PowerpackWidgetGeomapDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQueryGroupBy:PowerpackWidgetGeomapDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQueryMultiCompute:PowerpackWidgetGeomapDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQueryComputeQuery:PowerpackWidgetGeomapDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQueryGroupBy:PowerpackWidgetGeomapDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetGeomapDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetGeomapDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestLogQueryMultiCompute:PowerpackWidgetGeomapDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQuery:PowerpackWidgetGeomapDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetGeomapDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetGeomapDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryCloudCostQuery:PowerpackWidgetGeomapDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQuery:PowerpackWidgetGeomapDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryMetricQuery:PowerpackWidgetGeomapDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryProcessQuery:PowerpackWidgetGeomapDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQuerySloQuery:PowerpackWidgetGeomapDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetGeomapDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetGeomapDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryCloudCostQuery:PowerpackWidgetGeomapDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQuery:PowerpackWidgetGeomapDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryCompute:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQuerySearch:PowerpackWidgetGeomapDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryCompute:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetGeomapDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryEventQuerySearch:PowerpackWidgetGeomapDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryMetricQuery:PowerpackWidgetGeomapDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQueryProcessQuery:PowerpackWidgetGeomapDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestQuerySloQuery:PowerpackWidgetGeomapDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQuery:PowerpackWidgetGeomapDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQueryComputeQuery:PowerpackWidgetGeomapDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQueryGroupBy:PowerpackWidgetGeomapDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQueryMultiCompute:PowerpackWidgetGeomapDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQueryComputeQuery:PowerpackWidgetGeomapDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQueryGroupBy:PowerpackWidgetGeomapDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetGeomapDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetGeomapDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionRequestRumQueryMultiCompute:PowerpackWidgetGeomapDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionStyle:PowerpackWidgetGeomapDefinitionStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply to the widget.\n"
                },
                "paletteFlip": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to flip the palette tones.\n"
                }
            },
            "type": "object",
            "required": [
                "palette",
                "paletteFlip"
            ]
        },
        "datadog:index/PowerpackWidgetGeomapDefinitionView:PowerpackWidgetGeomapDefinitionView": {
            "properties": {
                "focus": {
                    "type": "string",
                    "description": "The two-letter ISO code of a country to focus the map on (or `WORLD`).\n"
                }
            },
            "type": "object",
            "required": [
                "focus"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinition:PowerpackWidgetHeatmapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionCustomLink:PowerpackWidgetHeatmapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "events": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionEvent:PowerpackWidgetHeatmapDefinitionEvent"
                    },
                    "description": "The definition of the event to overlay on the graph. Multiple \u003cspan pulumi-lang-nodejs=\"`event`\" pulumi-lang-dotnet=\"`Event`\" pulumi-lang-go=\"`event`\" pulumi-lang-python=\"`event`\" pulumi-lang-yaml=\"`event`\" pulumi-lang-java=\"`event`\"\u003e`event`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "legendSize": {
                    "type": "string",
                    "description": "The size of the legend displayed in the widget.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequest:PowerpackWidgetHeatmapDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                },
                "showLegend": {
                    "type": "boolean",
                    "description": "Whether or not to show the legend on this widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionYaxis:PowerpackWidgetHeatmapDefinitionYaxis",
                    "description": "A nested block describing the Y-Axis Controls. The structure of this block is described below.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionCustomLink:PowerpackWidgetHeatmapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionEvent:PowerpackWidgetHeatmapDefinitionEvent": {
            "properties": {
                "q": {
                    "type": "string",
                    "description": "The event query to use in the widget.\n"
                },
                "tagsExecution": {
                    "type": "string",
                    "description": "The execution method for multi-value filters.\n"
                }
            },
            "type": "object",
            "required": [
                "q"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequest:PowerpackWidgetHeatmapDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQuery:PowerpackWidgetHeatmapDefinitionRequestApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormula:PowerpackWidgetHeatmapDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQuery:PowerpackWidgetHeatmapDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestProcessQuery:PowerpackWidgetHeatmapDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQuery:PowerpackWidgetHeatmapDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQuery:PowerpackWidgetHeatmapDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQuery:PowerpackWidgetHeatmapDefinitionRequestSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestStyle:PowerpackWidgetHeatmapDefinitionRequestStyle",
                    "description": "The style of the widget graph. One nested block is allowed using the structure below.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQuery:PowerpackWidgetHeatmapDefinitionRequestApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQueryComputeQuery:PowerpackWidgetHeatmapDefinitionRequestApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQueryMultiCompute:PowerpackWidgetHeatmapDefinitionRequestApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQueryComputeQuery:PowerpackWidgetHeatmapDefinitionRequestApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestApmQueryMultiCompute:PowerpackWidgetHeatmapDefinitionRequestApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormula:PowerpackWidgetHeatmapDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaConditionalFormat:PowerpackWidgetHeatmapDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaLimit:PowerpackWidgetHeatmapDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormat:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaStyle:PowerpackWidgetHeatmapDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaConditionalFormat:PowerpackWidgetHeatmapDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaLimit:PowerpackWidgetHeatmapDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormat:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetHeatmapDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestFormulaStyle:PowerpackWidgetHeatmapDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQuery:PowerpackWidgetHeatmapDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQueryComputeQuery:PowerpackWidgetHeatmapDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQueryMultiCompute:PowerpackWidgetHeatmapDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQueryComputeQuery:PowerpackWidgetHeatmapDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestLogQueryMultiCompute:PowerpackWidgetHeatmapDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestProcessQuery:PowerpackWidgetHeatmapDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQuery:PowerpackWidgetHeatmapDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetHeatmapDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetHeatmapDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryCloudCostQuery:PowerpackWidgetHeatmapDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQuery:PowerpackWidgetHeatmapDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryMetricQuery:PowerpackWidgetHeatmapDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryProcessQuery:PowerpackWidgetHeatmapDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQuerySloQuery:PowerpackWidgetHeatmapDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetHeatmapDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetHeatmapDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryCloudCostQuery:PowerpackWidgetHeatmapDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQuery:PowerpackWidgetHeatmapDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryCompute:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQuerySearch:PowerpackWidgetHeatmapDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryCompute:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetHeatmapDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryEventQuerySearch:PowerpackWidgetHeatmapDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryMetricQuery:PowerpackWidgetHeatmapDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQueryProcessQuery:PowerpackWidgetHeatmapDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestQuerySloQuery:PowerpackWidgetHeatmapDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQuery:PowerpackWidgetHeatmapDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQueryComputeQuery:PowerpackWidgetHeatmapDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQueryMultiCompute:PowerpackWidgetHeatmapDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQueryComputeQuery:PowerpackWidgetHeatmapDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestRumQueryMultiCompute:PowerpackWidgetHeatmapDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQuery:PowerpackWidgetHeatmapDefinitionRequestSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetHeatmapDefinitionRequestSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionRequestStyle:PowerpackWidgetHeatmapDefinitionRequestStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHeatmapDefinitionYaxis:PowerpackWidgetHeatmapDefinitionYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinition:PowerpackWidgetHostmapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionCustomLink:PowerpackWidgetHostmapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "groups": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of tags to group nodes by.\n"
                },
                "noGroupHosts": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to show ungrouped nodes.\n"
                },
                "noMetricHosts": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to show nodes with no metrics.\n"
                },
                "nodeType": {
                    "type": "string",
                    "description": "The type of node used. Valid values are \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "request": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequest:PowerpackWidgetHostmapDefinitionRequest",
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of tags to filter nodes by.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionStyle:PowerpackWidgetHostmapDefinitionStyle",
                    "description": "The style of the widget graph. One nested block is allowed using the structure below.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionCustomLink:PowerpackWidgetHostmapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequest:PowerpackWidgetHostmapDefinitionRequest": {
            "properties": {
                "fills": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFill:PowerpackWidgetHostmapDefinitionRequestFill"
                    },
                    "description": "The query used to fill the map. Exactly one nested block is allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                },
                "sizes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSize:PowerpackWidgetHostmapDefinitionRequestSize"
                    },
                    "description": "The query used to size the map. Exactly one nested block is allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the request block).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFill:PowerpackWidgetHostmapDefinitionRequestFill": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQuery:PowerpackWidgetHostmapDefinitionRequestFillApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQuery:PowerpackWidgetHostmapDefinitionRequestFillLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillProcessQuery:PowerpackWidgetHostmapDefinitionRequestFillProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQuery:PowerpackWidgetHostmapDefinitionRequestFillRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQuery:PowerpackWidgetHostmapDefinitionRequestFillSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQuery:PowerpackWidgetHostmapDefinitionRequestFillApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestFillApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestFillApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestFillApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestFillApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestFillApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillApmQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestFillApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQuery:PowerpackWidgetHostmapDefinitionRequestFillLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestFillLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestFillLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestFillLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestFillLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestFillLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillLogQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestFillLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillProcessQuery:PowerpackWidgetHostmapDefinitionRequestFillProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQuery:PowerpackWidgetHostmapDefinitionRequestFillRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestFillRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestFillRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestFillRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestFillRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestFillRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillRumQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestFillRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQuery:PowerpackWidgetHostmapDefinitionRequestFillSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSize:PowerpackWidgetHostmapDefinitionRequestSize": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQuery:PowerpackWidgetHostmapDefinitionRequestSizeApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQuery:PowerpackWidgetHostmapDefinitionRequestSizeLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeProcessQuery:PowerpackWidgetHostmapDefinitionRequestSizeProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQuery:PowerpackWidgetHostmapDefinitionRequestSizeRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQuery:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQuery:PowerpackWidgetHostmapDefinitionRequestSizeApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestSizeApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestSizeApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQuery:PowerpackWidgetHostmapDefinitionRequestSizeLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestSizeLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestSizeLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeProcessQuery:PowerpackWidgetHostmapDefinitionRequestSizeProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQuery:PowerpackWidgetHostmapDefinitionRequestSizeRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestSizeRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestSizeRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQuery:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute:PowerpackWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetHostmapDefinitionStyle:PowerpackWidgetHostmapDefinitionStyle": {
            "properties": {
                "fillMax": {
                    "type": "string",
                    "description": "The max value to use to color the map.\n"
                },
                "fillMin": {
                    "type": "string",
                    "description": "The min value to use to color the map.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                },
                "paletteFlip": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to flip the palette tones.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetIframeDefinition:PowerpackWidgetIframeDefinition": {
            "properties": {
                "url": {
                    "type": "string",
                    "description": "The URL to use as a data source for the widget.\n"
                }
            },
            "type": "object",
            "required": [
                "url"
            ]
        },
        "datadog:index/PowerpackWidgetImageDefinition:PowerpackWidgetImageDefinition": {
            "properties": {
                "hasBackground": {
                    "type": "boolean",
                    "description": "Whether to display a background or not. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "hasBorder": {
                    "type": "boolean",
                    "description": "Whether to display a border or not. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "horizontalAlign": {
                    "type": "string",
                    "description": "The horizontal alignment for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "margin": {
                    "type": "string",
                    "description": "The margins to use around the image. Note: \u003cspan pulumi-lang-nodejs=\"`small`\" pulumi-lang-dotnet=\"`Small`\" pulumi-lang-go=\"`small`\" pulumi-lang-python=\"`small`\" pulumi-lang-yaml=\"`small`\" pulumi-lang-java=\"`small`\"\u003e`small`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`large`\" pulumi-lang-dotnet=\"`Large`\" pulumi-lang-go=\"`large`\" pulumi-lang-python=\"`large`\" pulumi-lang-yaml=\"`large`\" pulumi-lang-java=\"`large`\"\u003e`large`\u003c/span\u003e values are deprecated. Valid values are \u003cspan pulumi-lang-nodejs=\"`sm`\" pulumi-lang-dotnet=\"`Sm`\" pulumi-lang-go=\"`sm`\" pulumi-lang-python=\"`sm`\" pulumi-lang-yaml=\"`sm`\" pulumi-lang-java=\"`sm`\"\u003e`sm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`md`\" pulumi-lang-dotnet=\"`Md`\" pulumi-lang-go=\"`md`\" pulumi-lang-python=\"`md`\" pulumi-lang-yaml=\"`md`\" pulumi-lang-java=\"`md`\"\u003e`md`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lg`\" pulumi-lang-dotnet=\"`Lg`\" pulumi-lang-go=\"`lg`\" pulumi-lang-python=\"`lg`\" pulumi-lang-yaml=\"`lg`\" pulumi-lang-java=\"`lg`\"\u003e`lg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`small`\" pulumi-lang-dotnet=\"`Small`\" pulumi-lang-go=\"`small`\" pulumi-lang-python=\"`small`\" pulumi-lang-yaml=\"`small`\" pulumi-lang-java=\"`small`\"\u003e`small`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`large`\" pulumi-lang-dotnet=\"`Large`\" pulumi-lang-go=\"`large`\" pulumi-lang-python=\"`large`\" pulumi-lang-yaml=\"`large`\" pulumi-lang-java=\"`large`\"\u003e`large`\u003c/span\u003e.\n"
                },
                "sizing": {
                    "type": "string",
                    "description": "The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: \u003cspan pulumi-lang-nodejs=\"`zoom`\" pulumi-lang-dotnet=\"`Zoom`\" pulumi-lang-go=\"`zoom`\" pulumi-lang-python=\"`zoom`\" pulumi-lang-yaml=\"`zoom`\" pulumi-lang-java=\"`zoom`\"\u003e`zoom`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`fit`\" pulumi-lang-dotnet=\"`Fit`\" pulumi-lang-go=\"`fit`\" pulumi-lang-python=\"`fit`\" pulumi-lang-yaml=\"`fit`\" pulumi-lang-java=\"`fit`\"\u003e`fit`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e values are deprecated. Valid values are \u003cspan pulumi-lang-nodejs=\"`fill`\" pulumi-lang-dotnet=\"`Fill`\" pulumi-lang-go=\"`fill`\" pulumi-lang-python=\"`fill`\" pulumi-lang-yaml=\"`fill`\" pulumi-lang-java=\"`fill`\"\u003e`fill`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contain`\" pulumi-lang-dotnet=\"`Contain`\" pulumi-lang-go=\"`contain`\" pulumi-lang-python=\"`contain`\" pulumi-lang-yaml=\"`contain`\" pulumi-lang-java=\"`contain`\"\u003e`contain`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cover`\" pulumi-lang-dotnet=\"`Cover`\" pulumi-lang-go=\"`cover`\" pulumi-lang-python=\"`cover`\" pulumi-lang-yaml=\"`cover`\" pulumi-lang-java=\"`cover`\"\u003e`cover`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, `scale-down`, \u003cspan pulumi-lang-nodejs=\"`zoom`\" pulumi-lang-dotnet=\"`Zoom`\" pulumi-lang-go=\"`zoom`\" pulumi-lang-python=\"`zoom`\" pulumi-lang-yaml=\"`zoom`\" pulumi-lang-java=\"`zoom`\"\u003e`zoom`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`fit`\" pulumi-lang-dotnet=\"`Fit`\" pulumi-lang-go=\"`fit`\" pulumi-lang-python=\"`fit`\" pulumi-lang-yaml=\"`fit`\" pulumi-lang-java=\"`fit`\"\u003e`fit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL to use as a data source for the widget.\n"
                },
                "urlDarkTheme": {
                    "type": "string",
                    "description": "The URL in dark mode to use as a data source for the widget.\n"
                },
                "verticalAlign": {
                    "type": "string",
                    "description": "The vertical alignment for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`top`\" pulumi-lang-dotnet=\"`Top`\" pulumi-lang-go=\"`top`\" pulumi-lang-python=\"`top`\" pulumi-lang-yaml=\"`top`\" pulumi-lang-java=\"`top`\"\u003e`top`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bottom`\" pulumi-lang-dotnet=\"`Bottom`\" pulumi-lang-go=\"`bottom`\" pulumi-lang-python=\"`bottom`\" pulumi-lang-yaml=\"`bottom`\" pulumi-lang-java=\"`bottom`\"\u003e`bottom`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "url"
            ]
        },
        "datadog:index/PowerpackWidgetListStreamDefinition:PowerpackWidgetListStreamDefinition": {
            "properties": {
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetListStreamDefinitionRequest:PowerpackWidgetListStreamDefinitionRequest"
                    },
                    "description": "Nested block describing the requests to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed with the structure below.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title. Default is 16.\n"
                }
            },
            "type": "object",
            "required": [
                "requests"
            ]
        },
        "datadog:index/PowerpackWidgetListStreamDefinitionRequest:PowerpackWidgetListStreamDefinitionRequest": {
            "properties": {
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetListStreamDefinitionRequestColumn:PowerpackWidgetListStreamDefinitionRequestColumn"
                    },
                    "description": "Widget columns.\n"
                },
                "query": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetListStreamDefinitionRequestQuery:PowerpackWidgetListStreamDefinitionRequestQuery",
                    "description": "Updated list stream widget.\n"
                },
                "responseFormat": {
                    "type": "string",
                    "description": "Widget response format. Valid values are \u003cspan pulumi-lang-nodejs=\"`eventList`\" pulumi-lang-dotnet=\"`EventList`\" pulumi-lang-go=\"`eventList`\" pulumi-lang-python=\"`event_list`\" pulumi-lang-yaml=\"`eventList`\" pulumi-lang-java=\"`eventList`\"\u003e`eventList`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "columns",
                "query",
                "responseFormat"
            ]
        },
        "datadog:index/PowerpackWidgetListStreamDefinitionRequestColumn:PowerpackWidgetListStreamDefinitionRequestColumn": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "Widget column field.\n"
                },
                "width": {
                    "type": "string",
                    "description": "Widget column width. Valid values are \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`compact`\" pulumi-lang-dotnet=\"`Compact`\" pulumi-lang-go=\"`compact`\" pulumi-lang-python=\"`compact`\" pulumi-lang-yaml=\"`compact`\" pulumi-lang-java=\"`compact`\"\u003e`compact`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`full`\" pulumi-lang-dotnet=\"`Full`\" pulumi-lang-go=\"`full`\" pulumi-lang-python=\"`full`\" pulumi-lang-yaml=\"`full`\" pulumi-lang-java=\"`full`\"\u003e`full`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetListStreamDefinitionRequestQuery:PowerpackWidgetListStreamDefinitionRequestQuery": {
            "properties": {
                "clusteringPatternFieldPath": {
                    "type": "string",
                    "description": "Specifies the field for logs pattern clustering. Can only be used with \u003cspan pulumi-lang-nodejs=\"`logsPatternStream`\" pulumi-lang-dotnet=\"`LogsPatternStream`\" pulumi-lang-go=\"`logsPatternStream`\" pulumi-lang-python=\"`logs_pattern_stream`\" pulumi-lang-yaml=\"`logsPatternStream`\" pulumi-lang-java=\"`logsPatternStream`\"\u003e`logsPatternStream`\u003c/span\u003e.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "Source from which to query items to display in the stream. Valid values are \u003cspan pulumi-lang-nodejs=\"`logsStream`\" pulumi-lang-dotnet=\"`LogsStream`\" pulumi-lang-go=\"`logsStream`\" pulumi-lang-python=\"`logs_stream`\" pulumi-lang-yaml=\"`logsStream`\" pulumi-lang-java=\"`logsStream`\"\u003e`logsStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`auditStream`\" pulumi-lang-dotnet=\"`AuditStream`\" pulumi-lang-go=\"`auditStream`\" pulumi-lang-python=\"`audit_stream`\" pulumi-lang-yaml=\"`auditStream`\" pulumi-lang-java=\"`auditStream`\"\u003e`auditStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelineStream`\" pulumi-lang-dotnet=\"`CiPipelineStream`\" pulumi-lang-go=\"`ciPipelineStream`\" pulumi-lang-python=\"`ci_pipeline_stream`\" pulumi-lang-yaml=\"`ciPipelineStream`\" pulumi-lang-java=\"`ciPipelineStream`\"\u003e`ciPipelineStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTestStream`\" pulumi-lang-dotnet=\"`CiTestStream`\" pulumi-lang-go=\"`ciTestStream`\" pulumi-lang-python=\"`ci_test_stream`\" pulumi-lang-yaml=\"`ciTestStream`\" pulumi-lang-java=\"`ciTestStream`\"\u003e`ciTestStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumIssueStream`\" pulumi-lang-dotnet=\"`RumIssueStream`\" pulumi-lang-go=\"`rumIssueStream`\" pulumi-lang-python=\"`rum_issue_stream`\" pulumi-lang-yaml=\"`rumIssueStream`\" pulumi-lang-java=\"`rumIssueStream`\"\u003e`rumIssueStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmIssueStream`\" pulumi-lang-dotnet=\"`ApmIssueStream`\" pulumi-lang-go=\"`apmIssueStream`\" pulumi-lang-python=\"`apm_issue_stream`\" pulumi-lang-yaml=\"`apmIssueStream`\" pulumi-lang-java=\"`apmIssueStream`\"\u003e`apmIssueStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`traceStream`\" pulumi-lang-dotnet=\"`TraceStream`\" pulumi-lang-go=\"`traceStream`\" pulumi-lang-python=\"`trace_stream`\" pulumi-lang-yaml=\"`traceStream`\" pulumi-lang-java=\"`traceStream`\"\u003e`traceStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logsIssueStream`\" pulumi-lang-dotnet=\"`LogsIssueStream`\" pulumi-lang-go=\"`logsIssueStream`\" pulumi-lang-python=\"`logs_issue_stream`\" pulumi-lang-yaml=\"`logsIssueStream`\" pulumi-lang-java=\"`logsIssueStream`\"\u003e`logsIssueStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logsPatternStream`\" pulumi-lang-dotnet=\"`LogsPatternStream`\" pulumi-lang-go=\"`logsPatternStream`\" pulumi-lang-python=\"`logs_pattern_stream`\" pulumi-lang-yaml=\"`logsPatternStream`\" pulumi-lang-java=\"`logsPatternStream`\"\u003e`logsPatternStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logsTransactionStream`\" pulumi-lang-dotnet=\"`LogsTransactionStream`\" pulumi-lang-go=\"`logsTransactionStream`\" pulumi-lang-python=\"`logs_transaction_stream`\" pulumi-lang-yaml=\"`logsTransactionStream`\" pulumi-lang-java=\"`logsTransactionStream`\"\u003e`logsTransactionStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventStream`\" pulumi-lang-dotnet=\"`EventStream`\" pulumi-lang-go=\"`eventStream`\" pulumi-lang-python=\"`event_stream`\" pulumi-lang-yaml=\"`eventStream`\" pulumi-lang-java=\"`eventStream`\"\u003e`eventStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumStream`\" pulumi-lang-dotnet=\"`RumStream`\" pulumi-lang-go=\"`rumStream`\" pulumi-lang-python=\"`rum_stream`\" pulumi-lang-yaml=\"`rumStream`\" pulumi-lang-java=\"`rumStream`\"\u003e`rumStream`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`llmObservabilityStream`\" pulumi-lang-dotnet=\"`LlmObservabilityStream`\" pulumi-lang-go=\"`llmObservabilityStream`\" pulumi-lang-python=\"`llm_observability_stream`\" pulumi-lang-yaml=\"`llmObservabilityStream`\" pulumi-lang-java=\"`llmObservabilityStream`\"\u003e`llmObservabilityStream`\u003c/span\u003e.\n"
                },
                "eventSize": {
                    "type": "string",
                    "description": "Size of events displayed in widget. Required if \u003cspan pulumi-lang-nodejs=\"`dataSource`\" pulumi-lang-dotnet=\"`DataSource`\" pulumi-lang-go=\"`dataSource`\" pulumi-lang-python=\"`data_source`\" pulumi-lang-yaml=\"`dataSource`\" pulumi-lang-java=\"`dataSource`\"\u003e`dataSource`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`eventStream`\" pulumi-lang-dotnet=\"`EventStream`\" pulumi-lang-go=\"`eventStream`\" pulumi-lang-python=\"`event_stream`\" pulumi-lang-yaml=\"`eventStream`\" pulumi-lang-java=\"`eventStream`\"\u003e`eventStream`\u003c/span\u003e. Valid values are \u003cspan pulumi-lang-nodejs=\"`s`\" pulumi-lang-dotnet=\"`S`\" pulumi-lang-go=\"`s`\" pulumi-lang-python=\"`s`\" pulumi-lang-yaml=\"`s`\" pulumi-lang-java=\"`s`\"\u003e`s`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l`\" pulumi-lang-dotnet=\"`L`\" pulumi-lang-go=\"`l`\" pulumi-lang-python=\"`l`\" pulumi-lang-yaml=\"`l`\" pulumi-lang-java=\"`l`\"\u003e`l`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetListStreamDefinitionRequestQueryGroupBy:PowerpackWidgetListStreamDefinitionRequestQueryGroupBy"
                    },
                    "description": "Group by configuration for the List Stream widget. Group by can only be used with \u003cspan pulumi-lang-nodejs=\"`logsPatternStream`\" pulumi-lang-dotnet=\"`LogsPatternStream`\" pulumi-lang-go=\"`logsPatternStream`\" pulumi-lang-python=\"`logs_pattern_stream`\" pulumi-lang-yaml=\"`logsPatternStream`\" pulumi-lang-java=\"`logsPatternStream`\"\u003e`logsPatternStream`\u003c/span\u003e (up to 4 items) or \u003cspan pulumi-lang-nodejs=\"`logsTransactionStream`\" pulumi-lang-dotnet=\"`LogsTransactionStream`\" pulumi-lang-go=\"`logsTransactionStream`\" pulumi-lang-python=\"`logs_transaction_stream`\" pulumi-lang-yaml=\"`logsTransactionStream`\" pulumi-lang-java=\"`logsTransactionStream`\"\u003e`logsTransactionStream`\u003c/span\u003e (one group by item is required) list stream source.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of indexes.\n"
                },
                "queryString": {
                    "type": "string",
                    "description": "Widget query.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetListStreamDefinitionRequestQuerySort:PowerpackWidgetListStreamDefinitionRequestQuerySort",
                    "description": "The facet and order to sort the data, for example: `{\"column\": \"time\", \"order\": \"desc\"}`.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource"
            ]
        },
        "datadog:index/PowerpackWidgetListStreamDefinitionRequestQueryGroupBy:PowerpackWidgetListStreamDefinitionRequestQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "Facet name\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetListStreamDefinitionRequestQuerySort:PowerpackWidgetListStreamDefinitionRequestQuerySort": {
            "properties": {
                "column": {
                    "type": "string",
                    "description": "The facet path for the column.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "column",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetLogStreamDefinition:PowerpackWidgetLogStreamDefinition": {
            "properties": {
                "columns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Stringified list of columns to use, for example: `[\"column1\",\"column2\",\"column3\"]`.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "messageDisplay": {
                    "type": "string",
                    "description": "The number of log lines to display. Valid values are \u003cspan pulumi-lang-nodejs=\"`inline`\" pulumi-lang-dotnet=\"`Inline`\" pulumi-lang-go=\"`inline`\" pulumi-lang-python=\"`inline`\" pulumi-lang-yaml=\"`inline`\" pulumi-lang-java=\"`inline`\"\u003e`inline`\u003c/span\u003e, `expanded-md`, `expanded-lg`.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query to use in the widget.\n"
                },
                "showDateColumn": {
                    "type": "boolean",
                    "description": "If the date column should be displayed.\n"
                },
                "showMessageColumn": {
                    "type": "boolean",
                    "description": "If the message column should be displayed.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetLogStreamDefinitionSort:PowerpackWidgetLogStreamDefinitionSort",
                    "description": "The facet and order to sort the data, for example: `{\"column\": \"time\", \"order\": \"desc\"}`.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetLogStreamDefinitionSort:PowerpackWidgetLogStreamDefinitionSort": {
            "properties": {
                "column": {
                    "type": "string",
                    "description": "The facet path for the column.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "column",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetManageStatusDefinition:PowerpackWidgetManageStatusDefinition": {
            "properties": {
                "colorPreference": {
                    "type": "string",
                    "description": "Whether to colorize text or background. Valid values are \u003cspan pulumi-lang-nodejs=\"`background`\" pulumi-lang-dotnet=\"`Background`\" pulumi-lang-go=\"`background`\" pulumi-lang-python=\"`background`\" pulumi-lang-yaml=\"`background`\" pulumi-lang-java=\"`background`\"\u003e`background`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`text`\" pulumi-lang-dotnet=\"`Text`\" pulumi-lang-go=\"`text`\" pulumi-lang-python=\"`text`\" pulumi-lang-yaml=\"`text`\" pulumi-lang-java=\"`text`\"\u003e`text`\u003c/span\u003e.\n"
                },
                "displayFormat": {
                    "type": "string",
                    "description": "The display setting to use. Valid values are \u003cspan pulumi-lang-nodejs=\"`counts`\" pulumi-lang-dotnet=\"`Counts`\" pulumi-lang-go=\"`counts`\" pulumi-lang-python=\"`counts`\" pulumi-lang-yaml=\"`counts`\" pulumi-lang-java=\"`counts`\"\u003e`counts`\u003c/span\u003e, `countsAndList`, \u003cspan pulumi-lang-nodejs=\"`list`\" pulumi-lang-dotnet=\"`List`\" pulumi-lang-go=\"`list`\" pulumi-lang-python=\"`list`\" pulumi-lang-yaml=\"`list`\" pulumi-lang-java=\"`list`\"\u003e`list`\u003c/span\u003e.\n"
                },
                "hideZeroCounts": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to hide empty categories.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query to use in the widget.\n"
                },
                "showLastTriggered": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to show when monitors/groups last triggered.\n"
                },
                "showPriority": {
                    "type": "boolean",
                    "description": "Whether to show the priorities column.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The method to sort the monitors. Valid values are \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`group`\" pulumi-lang-dotnet=\"`Group`\" pulumi-lang-go=\"`group`\" pulumi-lang-python=\"`group`\" pulumi-lang-yaml=\"`group`\" pulumi-lang-java=\"`group`\"\u003e`group`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`triggered`\" pulumi-lang-dotnet=\"`Triggered`\" pulumi-lang-go=\"`triggered`\" pulumi-lang-python=\"`triggered`\" pulumi-lang-yaml=\"`triggered`\" pulumi-lang-java=\"`triggered`\"\u003e`triggered`\u003c/span\u003e, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`.\n"
                },
                "summaryType": {
                    "type": "string",
                    "description": "The summary type to use. Valid values are \u003cspan pulumi-lang-nodejs=\"`monitors`\" pulumi-lang-dotnet=\"`Monitors`\" pulumi-lang-go=\"`monitors`\" pulumi-lang-python=\"`monitors`\" pulumi-lang-yaml=\"`monitors`\" pulumi-lang-java=\"`monitors`\"\u003e`monitors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`groups`\" pulumi-lang-dotnet=\"`Groups`\" pulumi-lang-go=\"`groups`\" pulumi-lang-python=\"`groups`\" pulumi-lang-yaml=\"`groups`\" pulumi-lang-java=\"`groups`\"\u003e`groups`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetNoteDefinition:PowerpackWidgetNoteDefinition": {
            "properties": {
                "backgroundColor": {
                    "type": "string",
                    "description": "The background color of the note.\n"
                },
                "content": {
                    "type": "string",
                    "description": "The content of the note.\n"
                },
                "fontSize": {
                    "type": "string",
                    "description": "The size of the text.\n"
                },
                "hasPadding": {
                    "type": "boolean",
                    "description": "Whether to add padding or not. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "showTick": {
                    "type": "boolean",
                    "description": "Whether to show a tick or not.\n"
                },
                "textAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's text. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "tickEdge": {
                    "type": "string",
                    "description": "When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`bottom`\" pulumi-lang-dotnet=\"`Bottom`\" pulumi-lang-go=\"`bottom`\" pulumi-lang-python=\"`bottom`\" pulumi-lang-yaml=\"`bottom`\" pulumi-lang-java=\"`bottom`\"\u003e`bottom`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`top`\" pulumi-lang-dotnet=\"`Top`\" pulumi-lang-go=\"`top`\" pulumi-lang-python=\"`top`\" pulumi-lang-yaml=\"`top`\" pulumi-lang-java=\"`top`\"\u003e`top`\u003c/span\u003e.\n"
                },
                "tickPos": {
                    "type": "string",
                    "description": "When `tick = true`, a string with a percent sign indicating the position of the tick, for example: \u003cspan pulumi-lang-nodejs=\"`tickPos \" pulumi-lang-dotnet=\"`TickPos \" pulumi-lang-go=\"`tickPos \" pulumi-lang-python=\"`tick_pos \" pulumi-lang-yaml=\"`tickPos \" pulumi-lang-java=\"`tickPos \"\u003e`tickPos \u003c/span\u003e= \"50%\"` is centered alignment.\n"
                },
                "verticalAlign": {
                    "type": "string",
                    "description": "The vertical alignment for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`top`\" pulumi-lang-dotnet=\"`Top`\" pulumi-lang-go=\"`top`\" pulumi-lang-python=\"`top`\" pulumi-lang-yaml=\"`top`\" pulumi-lang-java=\"`top`\"\u003e`top`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bottom`\" pulumi-lang-dotnet=\"`Bottom`\" pulumi-lang-go=\"`bottom`\" pulumi-lang-python=\"`bottom`\" pulumi-lang-yaml=\"`bottom`\" pulumi-lang-java=\"`bottom`\"\u003e`bottom`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "content"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinition:PowerpackWidgetQueryTableDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionCustomLink:PowerpackWidgetQueryTableDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hasSearchBar": {
                    "type": "string",
                    "description": "Controls the display of the search bar. Valid values are \u003cspan pulumi-lang-nodejs=\"`always`\" pulumi-lang-dotnet=\"`Always`\" pulumi-lang-go=\"`always`\" pulumi-lang-python=\"`always`\" pulumi-lang-yaml=\"`always`\" pulumi-lang-java=\"`always`\"\u003e`always`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`never`\" pulumi-lang-dotnet=\"`Never`\" pulumi-lang-go=\"`never`\" pulumi-lang-python=\"`never`\" pulumi-lang-yaml=\"`never`\" pulumi-lang-java=\"`never`\"\u003e`never`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequest:PowerpackWidgetQueryTableDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmStatsQuery`\" pulumi-lang-dotnet=\"`ApmStatsQuery`\" pulumi-lang-go=\"`apmStatsQuery`\" pulumi-lang-python=\"`apm_stats_query`\" pulumi-lang-yaml=\"`apmStatsQuery`\" pulumi-lang-java=\"`apmStatsQuery`\"\u003e`apmStatsQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionCustomLink:PowerpackWidgetQueryTableDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequest:PowerpackWidgetQueryTableDefinitionRequest": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregator to use for time aggregation. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "alias": {
                    "type": "string",
                    "description": "The alias for the column name (defaults to metric name).\n"
                },
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQuery:PowerpackWidgetQueryTableDefinitionRequestApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "apmStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmStatsQuery:PowerpackWidgetQueryTableDefinitionRequestApmStatsQuery"
                },
                "cellDisplayModes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestConditionalFormat:PowerpackWidgetQueryTableDefinitionRequestConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormula:PowerpackWidgetQueryTableDefinitionRequestFormula"
                    }
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of lines to show in the table.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQuery:PowerpackWidgetQueryTableDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The sort order for the rows. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestProcessQuery:PowerpackWidgetQueryTableDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQuery:PowerpackWidgetQueryTableDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQuery:PowerpackWidgetQueryTableDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQuery:PowerpackWidgetQueryTableDefinitionRequestSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "textFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestTextFormat:PowerpackWidgetQueryTableDefinitionRequestTextFormat"
                    },
                    "description": "Text formats define how to format text in table widget content. Multiple \u003cspan pulumi-lang-nodejs=\"`textFormats`\" pulumi-lang-dotnet=\"`TextFormats`\" pulumi-lang-go=\"`textFormats`\" pulumi-lang-python=\"`text_formats`\" pulumi-lang-yaml=\"`textFormats`\" pulumi-lang-java=\"`textFormats`\"\u003e`textFormats`\u003c/span\u003e blocks are allowed using the structure below. This resource is in beta and is subject to change.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQuery:PowerpackWidgetQueryTableDefinitionRequestApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQueryComputeQuery:PowerpackWidgetQueryTableDefinitionRequestApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQueryMultiCompute:PowerpackWidgetQueryTableDefinitionRequestApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQueryComputeQuery:PowerpackWidgetQueryTableDefinitionRequestApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmQueryMultiCompute:PowerpackWidgetQueryTableDefinitionRequestApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmStatsQuery:PowerpackWidgetQueryTableDefinitionRequestApmStatsQuery": {
            "properties": {
                "columns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmStatsQueryColumn:PowerpackWidgetQueryTableDefinitionRequestApmStatsQueryColumn"
                    },
                    "description": "Column properties used by the front end for display.\n"
                },
                "env": {
                    "type": "string",
                    "description": "The environment name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The operation name associated with the service.\n"
                },
                "primaryTag": {
                    "type": "string",
                    "description": "The organization's host group name and value.\n"
                },
                "resource": {
                    "type": "string",
                    "description": "The resource name.\n"
                },
                "rowType": {
                    "type": "string",
                    "description": "The level of detail for the request. Valid values are \u003cspan pulumi-lang-nodejs=\"`service`\" pulumi-lang-dotnet=\"`Service`\" pulumi-lang-go=\"`service`\" pulumi-lang-python=\"`service`\" pulumi-lang-yaml=\"`service`\" pulumi-lang-java=\"`service`\"\u003e`service`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`resource`\" pulumi-lang-dotnet=\"`Resource`\" pulumi-lang-go=\"`resource`\" pulumi-lang-python=\"`resource`\" pulumi-lang-yaml=\"`resource`\" pulumi-lang-java=\"`resource`\"\u003e`resource`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`span`\" pulumi-lang-dotnet=\"`Span`\" pulumi-lang-go=\"`span`\" pulumi-lang-python=\"`span`\" pulumi-lang-yaml=\"`span`\" pulumi-lang-java=\"`span`\"\u003e`span`\u003c/span\u003e.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The service name.\n"
                }
            },
            "type": "object",
            "required": [
                "env",
                "name",
                "primaryTag",
                "rowType",
                "service"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestApmStatsQueryColumn:PowerpackWidgetQueryTableDefinitionRequestApmStatsQueryColumn": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "A user-assigned alias for the column.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The column name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestConditionalFormat:PowerpackWidgetQueryTableDefinitionRequestConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormula:PowerpackWidgetQueryTableDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "cellDisplayModeOptions": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaCellDisplayModeOptions:PowerpackWidgetQueryTableDefinitionRequestFormulaCellDisplayModeOptions",
                    "description": "A list of display modes for each table cell.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaConditionalFormat:PowerpackWidgetQueryTableDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaLimit:PowerpackWidgetQueryTableDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormat:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaStyle:PowerpackWidgetQueryTableDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaCellDisplayModeOptions:PowerpackWidgetQueryTableDefinitionRequestFormulaCellDisplayModeOptions": {
            "properties": {
                "trendType": {
                    "type": "string",
                    "description": "The type of trend line to display. Valid values are \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`line`\" pulumi-lang-dotnet=\"`Line`\" pulumi-lang-go=\"`line`\" pulumi-lang-python=\"`line`\" pulumi-lang-yaml=\"`line`\" pulumi-lang-java=\"`line`\"\u003e`line`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bars`\" pulumi-lang-dotnet=\"`Bars`\" pulumi-lang-go=\"`bars`\" pulumi-lang-python=\"`bars`\" pulumi-lang-yaml=\"`bars`\" pulumi-lang-java=\"`bars`\"\u003e`bars`\u003c/span\u003e.\n"
                },
                "yScale": {
                    "type": "string",
                    "description": "The scale of the y-axis. Valid values are \u003cspan pulumi-lang-nodejs=\"`shared`\" pulumi-lang-dotnet=\"`Shared`\" pulumi-lang-go=\"`shared`\" pulumi-lang-python=\"`shared`\" pulumi-lang-yaml=\"`shared`\" pulumi-lang-java=\"`shared`\"\u003e`shared`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`independent`\" pulumi-lang-dotnet=\"`Independent`\" pulumi-lang-go=\"`independent`\" pulumi-lang-python=\"`independent`\" pulumi-lang-yaml=\"`independent`\" pulumi-lang-java=\"`independent`\"\u003e`independent`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaConditionalFormat:PowerpackWidgetQueryTableDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaLimit:PowerpackWidgetQueryTableDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormat:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetQueryTableDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestFormulaStyle:PowerpackWidgetQueryTableDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQuery:PowerpackWidgetQueryTableDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQueryComputeQuery:PowerpackWidgetQueryTableDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQueryMultiCompute:PowerpackWidgetQueryTableDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQueryComputeQuery:PowerpackWidgetQueryTableDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestLogQueryMultiCompute:PowerpackWidgetQueryTableDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestProcessQuery:PowerpackWidgetQueryTableDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQuery:PowerpackWidgetQueryTableDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryCloudCostQuery:PowerpackWidgetQueryTableDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQuery:PowerpackWidgetQueryTableDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryMetricQuery:PowerpackWidgetQueryTableDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryProcessQuery:PowerpackWidgetQueryTableDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQuerySloQuery:PowerpackWidgetQueryTableDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryCloudCostQuery:PowerpackWidgetQueryTableDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQuery:PowerpackWidgetQueryTableDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryCompute:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQuerySearch:PowerpackWidgetQueryTableDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryCompute:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryEventQuerySearch:PowerpackWidgetQueryTableDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryMetricQuery:PowerpackWidgetQueryTableDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQueryProcessQuery:PowerpackWidgetQueryTableDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestQuerySloQuery:PowerpackWidgetQueryTableDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQuery:PowerpackWidgetQueryTableDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQueryComputeQuery:PowerpackWidgetQueryTableDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQueryMultiCompute:PowerpackWidgetQueryTableDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQueryComputeQuery:PowerpackWidgetQueryTableDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestRumQueryMultiCompute:PowerpackWidgetQueryTableDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQuery:PowerpackWidgetQueryTableDefinitionRequestSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetQueryTableDefinitionRequestSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestTextFormat:PowerpackWidgetQueryTableDefinitionRequestTextFormat": {
            "properties": {
                "textFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormat:PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormat"
                    },
                    "description": "The text format to apply to the items in a table widget column.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormat:PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormat": {
            "properties": {
                "customBgColor": {
                    "type": "string",
                    "description": "The custom color palette to apply to the background.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The custom color palette to apply to the foreground text.\n"
                },
                "match": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormatMatch:PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormatMatch",
                    "description": "Match rule for the table widget text format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e.\n"
                },
                "replace": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormatReplace:PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormatReplace",
                    "description": "Match rule for the table widget text format.\n"
                }
            },
            "type": "object",
            "required": [
                "match"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormatMatch:PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormatMatch": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Match or compare option. Valid values are \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`isNot`\" pulumi-lang-dotnet=\"`IsNot`\" pulumi-lang-go=\"`isNot`\" pulumi-lang-python=\"`is_not`\" pulumi-lang-yaml=\"`isNot`\" pulumi-lang-java=\"`isNot`\"\u003e`isNot`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`doesNotContain`\" pulumi-lang-dotnet=\"`DoesNotContain`\" pulumi-lang-go=\"`doesNotContain`\" pulumi-lang-python=\"`does_not_contain`\" pulumi-lang-yaml=\"`doesNotContain`\" pulumi-lang-java=\"`doesNotContain`\"\u003e`doesNotContain`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`startsWith`\" pulumi-lang-dotnet=\"`StartsWith`\" pulumi-lang-go=\"`startsWith`\" pulumi-lang-python=\"`starts_with`\" pulumi-lang-yaml=\"`startsWith`\" pulumi-lang-java=\"`startsWith`\"\u003e`startsWith`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`endsWith`\" pulumi-lang-dotnet=\"`EndsWith`\" pulumi-lang-go=\"`endsWith`\" pulumi-lang-python=\"`ends_with`\" pulumi-lang-yaml=\"`endsWith`\" pulumi-lang-java=\"`endsWith`\"\u003e`endsWith`\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Table Widget Match String.\n"
                }
            },
            "type": "object",
            "required": [
                "type",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormatReplace:PowerpackWidgetQueryTableDefinitionRequestTextFormatTextFormatReplace": {
            "properties": {
                "substring": {
                    "type": "string",
                    "description": "Text that will be replaced. Must be used with type \u003cspan pulumi-lang-nodejs=\"`substring`\" pulumi-lang-dotnet=\"`Substring`\" pulumi-lang-go=\"`substring`\" pulumi-lang-python=\"`substring`\" pulumi-lang-yaml=\"`substring`\" pulumi-lang-java=\"`substring`\"\u003e`substring`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Table widget text format replace all type.\n"
                },
                "with": {
                    "type": "string",
                    "description": "Table Widget Match String.\n"
                }
            },
            "type": "object",
            "required": [
                "type",
                "with"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinition:PowerpackWidgetQueryValueDefinition": {
            "properties": {
                "autoscale": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether to automatically scale the tile.\n"
                },
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionCustomLink:PowerpackWidgetQueryValueDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "customUnit": {
                    "type": "string",
                    "description": "The unit for the value displayed in the widget.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "precision": {
                    "type": "integer",
                    "description": "The precision to use when displaying the tile.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequest:PowerpackWidgetQueryValueDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "textAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's text. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "timeseriesBackground": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionTimeseriesBackground:PowerpackWidgetQueryValueDefinitionTimeseriesBackground",
                    "description": "Set a timeseries on the widget background.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionCustomLink:PowerpackWidgetQueryValueDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequest:PowerpackWidgetQueryValueDefinitionRequest": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregator to use for time aggregation. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQuery:PowerpackWidgetQueryValueDefinitionRequestApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "auditQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQuery:PowerpackWidgetQueryValueDefinitionRequestAuditQuery",
                    "description": "The query to use for this widget.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestConditionalFormat:PowerpackWidgetQueryValueDefinitionRequestConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormula:PowerpackWidgetQueryValueDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQuery:PowerpackWidgetQueryValueDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestProcessQuery:PowerpackWidgetQueryValueDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQuery:PowerpackWidgetQueryValueDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQuery:PowerpackWidgetQueryValueDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQuery:PowerpackWidgetQueryValueDefinitionRequestSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQuery:PowerpackWidgetQueryValueDefinitionRequestApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestApmQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQuery:PowerpackWidgetQueryValueDefinitionRequestAuditQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestAuditQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestAuditQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestAuditQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestAuditQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestAuditQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestAuditQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestAuditQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestConditionalFormat:PowerpackWidgetQueryValueDefinitionRequestConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormula:PowerpackWidgetQueryValueDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaConditionalFormat:PowerpackWidgetQueryValueDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaLimit:PowerpackWidgetQueryValueDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormat:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaStyle:PowerpackWidgetQueryValueDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaConditionalFormat:PowerpackWidgetQueryValueDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaLimit:PowerpackWidgetQueryValueDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormat:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetQueryValueDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestFormulaStyle:PowerpackWidgetQueryValueDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQuery:PowerpackWidgetQueryValueDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestLogQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestProcessQuery:PowerpackWidgetQueryValueDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQuery:PowerpackWidgetQueryValueDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryCloudCostQuery:PowerpackWidgetQueryValueDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQuery:PowerpackWidgetQueryValueDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryMetricQuery:PowerpackWidgetQueryValueDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryProcessQuery:PowerpackWidgetQueryValueDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQuerySloQuery:PowerpackWidgetQueryValueDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryCloudCostQuery:PowerpackWidgetQueryValueDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQuery:PowerpackWidgetQueryValueDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryCompute:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQuerySearch:PowerpackWidgetQueryValueDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryCompute:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryEventQuerySearch:PowerpackWidgetQueryValueDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryMetricQuery:PowerpackWidgetQueryValueDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQueryProcessQuery:PowerpackWidgetQueryValueDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestQuerySloQuery:PowerpackWidgetQueryValueDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQuery:PowerpackWidgetQueryValueDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestRumQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQuery:PowerpackWidgetQueryValueDefinitionRequestSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetQueryValueDefinitionRequestSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionTimeseriesBackground:PowerpackWidgetQueryValueDefinitionTimeseriesBackground": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Whether the Timeseries is made using an area or bars. Valid values are \u003cspan pulumi-lang-nodejs=\"`bars`\" pulumi-lang-dotnet=\"`Bars`\" pulumi-lang-go=\"`bars`\" pulumi-lang-python=\"`bars`\" pulumi-lang-yaml=\"`bars`\" pulumi-lang-java=\"`bars`\"\u003e`bars`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e.\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetQueryValueDefinitionTimeseriesBackgroundYaxis:PowerpackWidgetQueryValueDefinitionTimeseriesBackgroundYaxis",
                    "description": "A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/PowerpackWidgetQueryValueDefinitionTimeseriesBackgroundYaxis:PowerpackWidgetQueryValueDefinitionTimeseriesBackgroundYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetRunWorkflowDefinition:PowerpackWidgetRunWorkflowDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetRunWorkflowDefinitionCustomLink:PowerpackWidgetRunWorkflowDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "inputs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetRunWorkflowDefinitionInput:PowerpackWidgetRunWorkflowDefinitionInput"
                    },
                    "description": "Array of workflow inputs to map to dashboard template variables.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "workflowId": {
                    "type": "string",
                    "description": "Workflow ID\n"
                }
            },
            "type": "object",
            "required": [
                "workflowId"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData",
                        "workflowId"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetRunWorkflowDefinitionCustomLink:PowerpackWidgetRunWorkflowDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetRunWorkflowDefinitionInput:PowerpackWidgetRunWorkflowDefinitionInput": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the workflow input.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Dashboard template variable. Can be suffixed with `.value` or `.key`.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinition:PowerpackWidgetScatterplotDefinition": {
            "properties": {
                "colorByGroups": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of groups used for colors.\n"
                },
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionCustomLink:PowerpackWidgetScatterplotDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "request": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequest:PowerpackWidgetScatterplotDefinitionRequest",
                    "description": "A nested block describing the request to use when displaying the widget. Exactly one \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block is allowed using the structure below.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "xaxis": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionXaxis:PowerpackWidgetScatterplotDefinitionXaxis",
                    "description": "A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionYaxis:PowerpackWidgetScatterplotDefinitionYaxis",
                    "description": "A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionCustomLink:PowerpackWidgetScatterplotDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequest:PowerpackWidgetScatterplotDefinitionRequest": {
            "properties": {
                "scatterplotTables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTable:PowerpackWidgetScatterplotDefinitionRequestScatterplotTable"
                    },
                    "description": "Scatterplot request containing formulas and functions.\n"
                },
                "xes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestX:PowerpackWidgetScatterplotDefinitionRequestX"
                    },
                    "description": "The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmStatsQuery`\" pulumi-lang-dotnet=\"`ApmStatsQuery`\" pulumi-lang-go=\"`apmStatsQuery`\" pulumi-lang-python=\"`apm_stats_query`\" pulumi-lang-yaml=\"`apmStatsQuery`\" pulumi-lang-java=\"`apmStatsQuery`\"\u003e`apmStatsQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the block).\n"
                },
                "ys": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestY:PowerpackWidgetScatterplotDefinitionRequestY"
                    },
                    "description": "The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmStatsQuery`\" pulumi-lang-dotnet=\"`ApmStatsQuery`\" pulumi-lang-go=\"`apmStatsQuery`\" pulumi-lang-python=\"`apm_stats_query`\" pulumi-lang-yaml=\"`apmStatsQuery`\" pulumi-lang-java=\"`apmStatsQuery`\"\u003e`apmStatsQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the block).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTable:PowerpackWidgetScatterplotDefinitionRequestScatterplotTable": {
            "properties": {
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableFormula:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableFormula"
                    }
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQuery"
                    }
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableFormula:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "dimension": {
                    "type": "string",
                    "description": "Dimension of the Scatterplot. Valid values are \u003cspan pulumi-lang-nodejs=\"`x`\" pulumi-lang-dotnet=\"`X`\" pulumi-lang-go=\"`x`\" pulumi-lang-python=\"`x`\" pulumi-lang-yaml=\"`x`\" pulumi-lang-java=\"`x`\"\u003e`x`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`y`\" pulumi-lang-dotnet=\"`Y`\" pulumi-lang-go=\"`y`\" pulumi-lang-python=\"`y`\" pulumi-lang-yaml=\"`y`\" pulumi-lang-java=\"`y`\"\u003e`y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`radius`\" pulumi-lang-dotnet=\"`Radius`\" pulumi-lang-go=\"`radius`\" pulumi-lang-python=\"`radius`\" pulumi-lang-yaml=\"`radius`\" pulumi-lang-java=\"`radius`\"\u003e`radius`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`color`\" pulumi-lang-dotnet=\"`Color`\" pulumi-lang-go=\"`color`\" pulumi-lang-python=\"`color`\" pulumi-lang-yaml=\"`color`\" pulumi-lang-java=\"`color`\"\u003e`color`\u003c/span\u003e.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                }
            },
            "type": "object",
            "required": [
                "dimension",
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryCloudCostQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQuerySloQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryCloudCostQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFields:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFields:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFieldsSort:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFieldsSort:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQuerySloQuery:PowerpackWidgetScatterplotDefinitionRequestScatterplotTableQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestX:PowerpackWidgetScatterplotDefinitionRequestX": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "Aggregator used for the request. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQuery:PowerpackWidgetScatterplotDefinitionRequestXApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQuery:PowerpackWidgetScatterplotDefinitionRequestXLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXProcessQuery:PowerpackWidgetScatterplotDefinitionRequestXProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQuery:PowerpackWidgetScatterplotDefinitionRequestXRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQuery:PowerpackWidgetScatterplotDefinitionRequestXSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQuery:PowerpackWidgetScatterplotDefinitionRequestXApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestXApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestXApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestXApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestXApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestXApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXApmQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestXApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQuery:PowerpackWidgetScatterplotDefinitionRequestXLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestXLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestXLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestXLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestXLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestXLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXLogQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestXLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXProcessQuery:PowerpackWidgetScatterplotDefinitionRequestXProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQuery:PowerpackWidgetScatterplotDefinitionRequestXRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestXRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestXRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestXRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestXRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestXRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXRumQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestXRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQuery:PowerpackWidgetScatterplotDefinitionRequestXSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestY:PowerpackWidgetScatterplotDefinitionRequestY": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "Aggregator used for the request. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQuery:PowerpackWidgetScatterplotDefinitionRequestYApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQuery:PowerpackWidgetScatterplotDefinitionRequestYLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYProcessQuery:PowerpackWidgetScatterplotDefinitionRequestYProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQuery:PowerpackWidgetScatterplotDefinitionRequestYRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQuery:PowerpackWidgetScatterplotDefinitionRequestYSecurityQuery",
                    "description": "The query to use for this widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQuery:PowerpackWidgetScatterplotDefinitionRequestYApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestYApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestYApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestYApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestYApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestYApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYApmQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestYApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQuery:PowerpackWidgetScatterplotDefinitionRequestYLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestYLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestYLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestYLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestYLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestYLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYLogQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestYLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYProcessQuery:PowerpackWidgetScatterplotDefinitionRequestYProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQuery:PowerpackWidgetScatterplotDefinitionRequestYRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestYRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestYRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestYRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestYRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestYRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYRumQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestYRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQuery:PowerpackWidgetScatterplotDefinitionRequestYSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery:PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy:PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery:PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute:PowerpackWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionXaxis:PowerpackWidgetScatterplotDefinitionXaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetScatterplotDefinitionYaxis:PowerpackWidgetScatterplotDefinitionYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetServiceLevelObjectiveDefinition:PowerpackWidgetServiceLevelObjectiveDefinition": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "globalTimeTarget": {
                    "type": "string",
                    "description": "The global time target of the widget.\n"
                },
                "showErrorBudget": {
                    "type": "boolean",
                    "description": "Whether to show the error budget or not.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "The ID of the service level objective used by the widget.\n"
                },
                "timeWindows": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of time windows to display in the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`7d`\" pulumi-lang-dotnet=\"`7d`\" pulumi-lang-go=\"`7d`\" pulumi-lang-python=\"`7d`\" pulumi-lang-yaml=\"`7d`\" pulumi-lang-java=\"`7d`\"\u003e`7d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30d`\" pulumi-lang-dotnet=\"`30d`\" pulumi-lang-go=\"`30d`\" pulumi-lang-python=\"`30d`\" pulumi-lang-yaml=\"`30d`\" pulumi-lang-java=\"`30d`\"\u003e`30d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`90d`\" pulumi-lang-dotnet=\"`90d`\" pulumi-lang-go=\"`90d`\" pulumi-lang-python=\"`90d`\" pulumi-lang-yaml=\"`90d`\" pulumi-lang-java=\"`90d`\"\u003e`90d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`previousWeek`\" pulumi-lang-dotnet=\"`PreviousWeek`\" pulumi-lang-go=\"`previousWeek`\" pulumi-lang-python=\"`previous_week`\" pulumi-lang-yaml=\"`previousWeek`\" pulumi-lang-java=\"`previousWeek`\"\u003e`previousWeek`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`previousMonth`\" pulumi-lang-dotnet=\"`PreviousMonth`\" pulumi-lang-go=\"`previousMonth`\" pulumi-lang-python=\"`previous_month`\" pulumi-lang-yaml=\"`previousMonth`\" pulumi-lang-java=\"`previousMonth`\"\u003e`previousMonth`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`globalTime`\" pulumi-lang-dotnet=\"`GlobalTime`\" pulumi-lang-go=\"`globalTime`\" pulumi-lang-python=\"`global_time`\" pulumi-lang-yaml=\"`globalTime`\" pulumi-lang-java=\"`globalTime`\"\u003e`globalTime`\u003c/span\u003e.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "viewMode": {
                    "type": "string",
                    "description": "The view mode for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`component`\" pulumi-lang-dotnet=\"`Component`\" pulumi-lang-go=\"`component`\" pulumi-lang-python=\"`component`\" pulumi-lang-yaml=\"`component`\" pulumi-lang-java=\"`component`\"\u003e`component`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`both`\" pulumi-lang-dotnet=\"`Both`\" pulumi-lang-go=\"`both`\" pulumi-lang-python=\"`both`\" pulumi-lang-yaml=\"`both`\" pulumi-lang-java=\"`both`\"\u003e`both`\u003c/span\u003e.\n"
                },
                "viewType": {
                    "type": "string",
                    "description": "The type of view to use when displaying the widget. Only \u003cspan pulumi-lang-nodejs=\"`detail`\" pulumi-lang-dotnet=\"`Detail`\" pulumi-lang-go=\"`detail`\" pulumi-lang-python=\"`detail`\" pulumi-lang-yaml=\"`detail`\" pulumi-lang-java=\"`detail`\"\u003e`detail`\u003c/span\u003e is supported.\n"
                }
            },
            "type": "object",
            "required": [
                "sloId",
                "timeWindows",
                "viewMode",
                "viewType"
            ]
        },
        "datadog:index/PowerpackWidgetServicemapDefinition:PowerpackWidgetServicemapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetServicemapDefinitionCustomLink:PowerpackWidgetServicemapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Your environment and primary tag (or `*` if enabled for your account).\n"
                },
                "service": {
                    "type": "string",
                    "description": "The ID of the service to map.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "filters",
                "service"
            ]
        },
        "datadog:index/PowerpackWidgetServicemapDefinitionCustomLink:PowerpackWidgetServicemapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSloListDefinition:PowerpackWidgetSloListDefinition": {
            "properties": {
                "request": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSloListDefinitionRequest:PowerpackWidgetSloListDefinitionRequest",
                    "description": "A nested block describing the request to use when displaying the widget. Exactly one \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block is allowed.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "request"
            ]
        },
        "datadog:index/PowerpackWidgetSloListDefinitionRequest:PowerpackWidgetSloListDefinitionRequest": {
            "properties": {
                "query": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSloListDefinitionRequestQuery:PowerpackWidgetSloListDefinitionRequestQuery",
                    "description": "Updated SLO List widget.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "The request type for the SLO List request. Valid values are \u003cspan pulumi-lang-nodejs=\"`sloList`\" pulumi-lang-dotnet=\"`SloList`\" pulumi-lang-go=\"`sloList`\" pulumi-lang-python=\"`slo_list`\" pulumi-lang-yaml=\"`sloList`\" pulumi-lang-java=\"`sloList`\"\u003e`sloList`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "query",
                "requestType"
            ]
        },
        "datadog:index/PowerpackWidgetSloListDefinitionRequestQuery:PowerpackWidgetSloListDefinitionRequestQuery": {
            "properties": {
                "limit": {
                    "type": "integer",
                    "description": "Maximum number of results to display in the table. Defaults to \u003cspan pulumi-lang-nodejs=\"`100`\" pulumi-lang-dotnet=\"`100`\" pulumi-lang-go=\"`100`\" pulumi-lang-python=\"`100`\" pulumi-lang-yaml=\"`100`\" pulumi-lang-java=\"`100`\"\u003e`100`\u003c/span\u003e.\n"
                },
                "queryString": {
                    "type": "string",
                    "description": "Widget query.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSloListDefinitionRequestQuerySort:PowerpackWidgetSloListDefinitionRequestQuerySort",
                    "description": "The facet and order to sort the data, for example: `{\"column\": \"status.sli\", \"order\": \"desc\"}`.\n"
                }
            },
            "type": "object",
            "required": [
                "queryString"
            ]
        },
        "datadog:index/PowerpackWidgetSloListDefinitionRequestQuerySort:PowerpackWidgetSloListDefinitionRequestQuerySort": {
            "properties": {
                "column": {
                    "type": "string",
                    "description": "The facet path for the column.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "column",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinition:PowerpackWidgetSunburstDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionCustomLink:PowerpackWidgetSunburstDefinitionCustomLink"
                    },
                    "description": "Nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed with the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "hideTotal": {
                    "type": "boolean",
                    "description": "Whether or not to show the total value in the widget.\n"
                },
                "legendInline": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionLegendInline:PowerpackWidgetSunburstDefinitionLegendInline",
                    "description": "Used to configure the inline legend. Cannot be used in conjunction with legend*table.\n"
                },
                "legendTable": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionLegendTable:PowerpackWidgetSunburstDefinitionLegendTable",
                    "description": "Used to configure the table legend. Cannot be used in conjunction with legend*inline.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequest:PowerpackWidgetSunburstDefinitionRequest"
                    },
                    "description": "Nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed with the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. One of \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title. Default is 16.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionCustomLink:PowerpackWidgetSunburstDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionLegendInline:PowerpackWidgetSunburstDefinitionLegendInline": {
            "properties": {
                "hidePercent": {
                    "type": "boolean",
                    "description": "Whether to hide the percentages of the groups.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Whether to hide the values of the groups.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of legend (inline or automatic). Valid values are \u003cspan pulumi-lang-nodejs=\"`inline`\" pulumi-lang-dotnet=\"`Inline`\" pulumi-lang-go=\"`inline`\" pulumi-lang-python=\"`inline`\" pulumi-lang-yaml=\"`inline`\" pulumi-lang-java=\"`inline`\"\u003e`inline`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`automatic`\" pulumi-lang-dotnet=\"`Automatic`\" pulumi-lang-go=\"`automatic`\" pulumi-lang-python=\"`automatic`\" pulumi-lang-yaml=\"`automatic`\" pulumi-lang-java=\"`automatic`\"\u003e`automatic`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionLegendTable:PowerpackWidgetSunburstDefinitionLegendTable": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "The type of legend (table or none). Valid values are \u003cspan pulumi-lang-nodejs=\"`table`\" pulumi-lang-dotnet=\"`Table`\" pulumi-lang-go=\"`table`\" pulumi-lang-python=\"`table`\" pulumi-lang-yaml=\"`table`\" pulumi-lang-java=\"`table`\"\u003e`table`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequest:PowerpackWidgetSunburstDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQuery:PowerpackWidgetSunburstDefinitionRequestApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "auditQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQuery:PowerpackWidgetSunburstDefinitionRequestAuditQuery",
                    "description": "The query to use for this widget.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormula:PowerpackWidgetSunburstDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQuery:PowerpackWidgetSunburstDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "networkQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQuery:PowerpackWidgetSunburstDefinitionRequestNetworkQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestProcessQuery:PowerpackWidgetSunburstDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQuery:PowerpackWidgetSunburstDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQuery:PowerpackWidgetSunburstDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQuery:PowerpackWidgetSunburstDefinitionRequestSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestStyle:PowerpackWidgetSunburstDefinitionRequestStyle",
                    "description": "Define style for the widget's request.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQuery:PowerpackWidgetSunburstDefinitionRequestApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestApmQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQuery:PowerpackWidgetSunburstDefinitionRequestAuditQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestAuditQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestAuditQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestAuditQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestAuditQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestAuditQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestAuditQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestAuditQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormula:PowerpackWidgetSunburstDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaConditionalFormat:PowerpackWidgetSunburstDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaLimit:PowerpackWidgetSunburstDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormat:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaStyle:PowerpackWidgetSunburstDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaConditionalFormat:PowerpackWidgetSunburstDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaLimit:PowerpackWidgetSunburstDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormat:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetSunburstDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestFormulaStyle:PowerpackWidgetSunburstDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQuery:PowerpackWidgetSunburstDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestLogQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQuery:PowerpackWidgetSunburstDefinitionRequestNetworkQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestNetworkQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestNetworkQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestNetworkQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestNetworkQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestNetworkQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestNetworkQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestNetworkQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestProcessQuery:PowerpackWidgetSunburstDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQuery:PowerpackWidgetSunburstDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryCloudCostQuery:PowerpackWidgetSunburstDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQuery:PowerpackWidgetSunburstDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryMetricQuery:PowerpackWidgetSunburstDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryProcessQuery:PowerpackWidgetSunburstDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQuerySloQuery:PowerpackWidgetSunburstDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryCloudCostQuery:PowerpackWidgetSunburstDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQuery:PowerpackWidgetSunburstDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryCompute:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQuerySearch:PowerpackWidgetSunburstDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryCompute:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryEventQuerySearch:PowerpackWidgetSunburstDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryMetricQuery:PowerpackWidgetSunburstDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQueryProcessQuery:PowerpackWidgetSunburstDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestQuerySloQuery:PowerpackWidgetSunburstDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQuery:PowerpackWidgetSunburstDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestRumQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQuery:PowerpackWidgetSunburstDefinitionRequestSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetSunburstDefinitionRequestSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetSunburstDefinitionRequestSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetSunburstDefinitionRequestSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetSunburstDefinitionRequestStyle:PowerpackWidgetSunburstDefinitionRequestStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinition:PowerpackWidgetTimeseriesDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionCustomLink:PowerpackWidgetTimeseriesDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "events": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionEvent:PowerpackWidgetTimeseriesDefinitionEvent"
                    },
                    "description": "The definition of the event to overlay on the graph. Multiple \u003cspan pulumi-lang-nodejs=\"`event`\" pulumi-lang-dotnet=\"`Event`\" pulumi-lang-go=\"`event`\" pulumi-lang-python=\"`event`\" pulumi-lang-yaml=\"`event`\" pulumi-lang-java=\"`event`\"\u003e`event`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "legendColumns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of columns to display in the legend. Valid values are \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e.\n"
                },
                "legendLayout": {
                    "type": "string",
                    "description": "The layout of the legend displayed in the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`horizontal`\" pulumi-lang-dotnet=\"`Horizontal`\" pulumi-lang-go=\"`horizontal`\" pulumi-lang-python=\"`horizontal`\" pulumi-lang-yaml=\"`horizontal`\" pulumi-lang-java=\"`horizontal`\"\u003e`horizontal`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`vertical`\" pulumi-lang-dotnet=\"`Vertical`\" pulumi-lang-go=\"`vertical`\" pulumi-lang-python=\"`vertical`\" pulumi-lang-yaml=\"`vertical`\" pulumi-lang-java=\"`vertical`\"\u003e`vertical`\u003c/span\u003e.\n"
                },
                "legendSize": {
                    "type": "string",
                    "description": "The size of the legend displayed in the widget.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "markers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionMarker:PowerpackWidgetTimeseriesDefinitionMarker"
                    },
                    "description": "A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple \u003cspan pulumi-lang-nodejs=\"`marker`\" pulumi-lang-dotnet=\"`Marker`\" pulumi-lang-go=\"`marker`\" pulumi-lang-python=\"`marker`\" pulumi-lang-yaml=\"`marker`\" pulumi-lang-java=\"`marker`\"\u003e`marker`\u003c/span\u003e blocks are allowed within a given \u003cspan pulumi-lang-nodejs=\"`tileDef`\" pulumi-lang-dotnet=\"`TileDef`\" pulumi-lang-go=\"`tileDef`\" pulumi-lang-python=\"`tile_def`\" pulumi-lang-yaml=\"`tileDef`\" pulumi-lang-java=\"`tileDef`\"\u003e`tileDef`\u003c/span\u003e block.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequest:PowerpackWidgetTimeseriesDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`networkQuery`\" pulumi-lang-dotnet=\"`NetworkQuery`\" pulumi-lang-go=\"`networkQuery`\" pulumi-lang-python=\"`network_query`\" pulumi-lang-yaml=\"`networkQuery`\" pulumi-lang-java=\"`networkQuery`\"\u003e`networkQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "rightYaxis": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRightYaxis:PowerpackWidgetTimeseriesDefinitionRightYaxis",
                    "description": "A nested block describing the right Y-Axis Controls. See the \u003cspan pulumi-lang-nodejs=\"`onRightYaxis`\" pulumi-lang-dotnet=\"`OnRightYaxis`\" pulumi-lang-go=\"`onRightYaxis`\" pulumi-lang-python=\"`on_right_yaxis`\" pulumi-lang-yaml=\"`onRightYaxis`\" pulumi-lang-java=\"`onRightYaxis`\"\u003e`onRightYaxis`\u003c/span\u003e property for which request will use this axis. The structure of this block is described below.\n"
                },
                "showLegend": {
                    "type": "boolean",
                    "description": "Whether or not to show the legend on this widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                },
                "yaxis": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionYaxis:PowerpackWidgetTimeseriesDefinitionYaxis",
                    "description": "A nested block describing the Y-Axis Controls. The structure of this block is described below.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionCustomLink:PowerpackWidgetTimeseriesDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionEvent:PowerpackWidgetTimeseriesDefinitionEvent": {
            "properties": {
                "q": {
                    "type": "string",
                    "description": "The event query to use in the widget.\n"
                },
                "tagsExecution": {
                    "type": "string",
                    "description": "The execution method for multi-value filters.\n"
                }
            },
            "type": "object",
            "required": [
                "q"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionMarker:PowerpackWidgetTimeseriesDefinitionMarker": {
            "properties": {
                "displayType": {
                    "type": "string",
                    "description": "How the marker lines are displayed, options are one of {\u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`warning`\" pulumi-lang-dotnet=\"`Warning`\" pulumi-lang-go=\"`warning`\" pulumi-lang-python=\"`warning`\" pulumi-lang-yaml=\"`warning`\" pulumi-lang-java=\"`warning`\"\u003e`warning`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ok`\" pulumi-lang-dotnet=\"`Ok`\" pulumi-lang-go=\"`ok`\" pulumi-lang-python=\"`ok`\" pulumi-lang-yaml=\"`ok`\" pulumi-lang-java=\"`ok`\"\u003e`ok`\u003c/span\u003e} combined with one of {\u003cspan pulumi-lang-nodejs=\"`dashed`\" pulumi-lang-dotnet=\"`Dashed`\" pulumi-lang-go=\"`dashed`\" pulumi-lang-python=\"`dashed`\" pulumi-lang-yaml=\"`dashed`\" pulumi-lang-java=\"`dashed`\"\u003e`dashed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`solid`\" pulumi-lang-dotnet=\"`Solid`\" pulumi-lang-go=\"`solid`\" pulumi-lang-python=\"`solid`\" pulumi-lang-yaml=\"`solid`\" pulumi-lang-java=\"`solid`\"\u003e`solid`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bold`\" pulumi-lang-dotnet=\"`Bold`\" pulumi-lang-go=\"`bold`\" pulumi-lang-python=\"`bold`\" pulumi-lang-yaml=\"`bold`\" pulumi-lang-java=\"`bold`\"\u003e`bold`\u003c/span\u003e}. Example: `error dashed`.\n"
                },
                "label": {
                    "type": "string",
                    "description": "A label for the line or range.\n"
                },
                "value": {
                    "type": "string",
                    "description": "A mathematical expression describing the marker, for example: `y \u003e 1`, `-5 \u003c y \u003c 0`, `y = 19`.\n"
                }
            },
            "type": "object",
            "required": [
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequest:PowerpackWidgetTimeseriesDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQuery:PowerpackWidgetTimeseriesDefinitionRequestApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "auditQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQuery:PowerpackWidgetTimeseriesDefinitionRequestAuditQuery",
                    "description": "The query to use for this widget.\n"
                },
                "displayType": {
                    "type": "string",
                    "description": "How to display the marker lines. Valid values are \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bars`\" pulumi-lang-dotnet=\"`Bars`\" pulumi-lang-go=\"`bars`\" pulumi-lang-python=\"`bars`\" pulumi-lang-yaml=\"`bars`\" pulumi-lang-java=\"`bars`\"\u003e`bars`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`line`\" pulumi-lang-dotnet=\"`Line`\" pulumi-lang-go=\"`line`\" pulumi-lang-python=\"`line`\" pulumi-lang-yaml=\"`line`\" pulumi-lang-java=\"`line`\"\u003e`line`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`overlay`\" pulumi-lang-dotnet=\"`Overlay`\" pulumi-lang-go=\"`overlay`\" pulumi-lang-python=\"`overlay`\" pulumi-lang-yaml=\"`overlay`\" pulumi-lang-java=\"`overlay`\"\u003e`overlay`\u003c/span\u003e.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormula:PowerpackWidgetTimeseriesDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQuery:PowerpackWidgetTimeseriesDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "metadatas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestMetadata:PowerpackWidgetTimeseriesDefinitionRequestMetadata"
                    },
                    "description": "Used to define expression aliases. Multiple \u003cspan pulumi-lang-nodejs=\"`metadata`\" pulumi-lang-dotnet=\"`Metadata`\" pulumi-lang-go=\"`metadata`\" pulumi-lang-python=\"`metadata`\" pulumi-lang-yaml=\"`metadata`\" pulumi-lang-java=\"`metadata`\"\u003e`metadata`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "networkQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQuery:PowerpackWidgetTimeseriesDefinitionRequestNetworkQuery",
                    "description": "The query to use for this widget.\n"
                },
                "onRightYaxis": {
                    "type": "boolean",
                    "description": "A Boolean indicating whether the request uses the right or left Y-Axis.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestProcessQuery:PowerpackWidgetTimeseriesDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQuery:PowerpackWidgetTimeseriesDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQuery:PowerpackWidgetTimeseriesDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQuery:PowerpackWidgetTimeseriesDefinitionRequestSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestStyle:PowerpackWidgetTimeseriesDefinitionRequestStyle",
                    "description": "The style of the widget graph. Exactly one \u003cspan pulumi-lang-nodejs=\"`style`\" pulumi-lang-dotnet=\"`Style`\" pulumi-lang-go=\"`style`\" pulumi-lang-python=\"`style`\" pulumi-lang-yaml=\"`style`\" pulumi-lang-java=\"`style`\"\u003e`style`\u003c/span\u003e block is allowed using the structure below.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQuery:PowerpackWidgetTimeseriesDefinitionRequestApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestApmQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQuery:PowerpackWidgetTimeseriesDefinitionRequestAuditQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestAuditQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestAuditQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormula:PowerpackWidgetTimeseriesDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaConditionalFormat:PowerpackWidgetTimeseriesDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaLimit:PowerpackWidgetTimeseriesDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormat:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaStyle:PowerpackWidgetTimeseriesDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaConditionalFormat:PowerpackWidgetTimeseriesDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaLimit:PowerpackWidgetTimeseriesDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormat:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetTimeseriesDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestFormulaStyle:PowerpackWidgetTimeseriesDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQuery:PowerpackWidgetTimeseriesDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestLogQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestMetadata:PowerpackWidgetTimeseriesDefinitionRequestMetadata": {
            "properties": {
                "aliasName": {
                    "type": "string",
                    "description": "The expression alias.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The expression name.\n"
                }
            },
            "type": "object",
            "required": [
                "expression"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQuery:PowerpackWidgetTimeseriesDefinitionRequestNetworkQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestProcessQuery:PowerpackWidgetTimeseriesDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQuery:PowerpackWidgetTimeseriesDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryCloudCostQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryMetricQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryProcessQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQuerySloQuery:PowerpackWidgetTimeseriesDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryCloudCostQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryCompute:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQuerySearch:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryCompute:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryEventQuerySearch:PowerpackWidgetTimeseriesDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryMetricQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQueryProcessQuery:PowerpackWidgetTimeseriesDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestQuerySloQuery:PowerpackWidgetTimeseriesDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQuery:PowerpackWidgetTimeseriesDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestRumQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQuery:PowerpackWidgetTimeseriesDefinitionRequestSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRequestStyle:PowerpackWidgetTimeseriesDefinitionRequestStyle": {
            "properties": {
                "hasValueLabels": {
                    "type": "boolean",
                    "description": "If true, the value is displayed as a label relative to the data point.\n"
                },
                "lineType": {
                    "type": "string",
                    "description": "The type of lines displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`dashed`\" pulumi-lang-dotnet=\"`Dashed`\" pulumi-lang-go=\"`dashed`\" pulumi-lang-python=\"`dashed`\" pulumi-lang-yaml=\"`dashed`\" pulumi-lang-java=\"`dashed`\"\u003e`dashed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dotted`\" pulumi-lang-dotnet=\"`Dotted`\" pulumi-lang-go=\"`dotted`\" pulumi-lang-python=\"`dotted`\" pulumi-lang-yaml=\"`dotted`\" pulumi-lang-java=\"`dotted`\"\u003e`dotted`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`solid`\" pulumi-lang-dotnet=\"`Solid`\" pulumi-lang-go=\"`solid`\" pulumi-lang-python=\"`solid`\" pulumi-lang-yaml=\"`solid`\" pulumi-lang-java=\"`solid`\"\u003e`solid`\u003c/span\u003e.\n"
                },
                "lineWidth": {
                    "type": "string",
                    "description": "The width of line displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`normal`\" pulumi-lang-dotnet=\"`Normal`\" pulumi-lang-go=\"`normal`\" pulumi-lang-python=\"`normal`\" pulumi-lang-yaml=\"`normal`\" pulumi-lang-java=\"`normal`\"\u003e`normal`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thick`\" pulumi-lang-dotnet=\"`Thick`\" pulumi-lang-go=\"`thick`\" pulumi-lang-python=\"`thick`\" pulumi-lang-yaml=\"`thick`\" pulumi-lang-java=\"`thick`\"\u003e`thick`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thin`\" pulumi-lang-dotnet=\"`Thin`\" pulumi-lang-go=\"`thin`\" pulumi-lang-python=\"`thin`\" pulumi-lang-yaml=\"`thin`\" pulumi-lang-java=\"`thin`\"\u003e`thin`\u003c/span\u003e.\n"
                },
                "orderBy": {
                    "type": "string",
                    "description": "How to order series in timeseries visualizations. Valid values are \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`values`\" pulumi-lang-dotnet=\"`Values`\" pulumi-lang-go=\"`values`\" pulumi-lang-python=\"`values`\" pulumi-lang-yaml=\"`values`\" pulumi-lang-java=\"`values`\"\u003e`values`\u003c/span\u003e.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionRightYaxis:PowerpackWidgetTimeseriesDefinitionRightYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTimeseriesDefinitionYaxis:PowerpackWidgetTimeseriesDefinitionYaxis": {
            "properties": {
                "includeZero": {
                    "type": "boolean",
                    "description": "Always include zero or fit the axis to the data range.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label of the axis to display on the graph.\n"
                },
                "max": {
                    "type": "string",
                    "description": "Specify the maximum value to show on the Y-axis.\n"
                },
                "min": {
                    "type": "string",
                    "description": "Specify the minimum value to show on the Y-axis.\n"
                },
                "scale": {
                    "type": "string",
                    "description": "Specify the scale type, options: \u003cspan pulumi-lang-nodejs=\"`linear`\" pulumi-lang-dotnet=\"`Linear`\" pulumi-lang-go=\"`linear`\" pulumi-lang-python=\"`linear`\" pulumi-lang-yaml=\"`linear`\" pulumi-lang-java=\"`linear`\"\u003e`linear`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`log`\" pulumi-lang-dotnet=\"`Log`\" pulumi-lang-go=\"`log`\" pulumi-lang-python=\"`log`\" pulumi-lang-yaml=\"`log`\" pulumi-lang-java=\"`log`\"\u003e`log`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pow`\" pulumi-lang-dotnet=\"`Pow`\" pulumi-lang-go=\"`pow`\" pulumi-lang-python=\"`pow`\" pulumi-lang-yaml=\"`pow`\" pulumi-lang-java=\"`pow`\"\u003e`pow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sqrt`\" pulumi-lang-dotnet=\"`Sqrt`\" pulumi-lang-go=\"`sqrt`\" pulumi-lang-python=\"`sqrt`\" pulumi-lang-yaml=\"`sqrt`\" pulumi-lang-java=\"`sqrt`\"\u003e`sqrt`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinition:PowerpackWidgetToplistDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionCustomLink:PowerpackWidgetToplistDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequest:PowerpackWidgetToplistDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e blocks are allowed using the structure below (exactly one of \u003cspan pulumi-lang-nodejs=\"`q`\" pulumi-lang-dotnet=\"`Q`\" pulumi-lang-go=\"`q`\" pulumi-lang-python=\"`q`\" pulumi-lang-yaml=\"`q`\" pulumi-lang-java=\"`q`\"\u003e`q`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apmQuery`\" pulumi-lang-dotnet=\"`ApmQuery`\" pulumi-lang-go=\"`apmQuery`\" pulumi-lang-python=\"`apm_query`\" pulumi-lang-yaml=\"`apmQuery`\" pulumi-lang-java=\"`apmQuery`\"\u003e`apmQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logQuery`\" pulumi-lang-dotnet=\"`LogQuery`\" pulumi-lang-go=\"`logQuery`\" pulumi-lang-python=\"`log_query`\" pulumi-lang-yaml=\"`logQuery`\" pulumi-lang-java=\"`logQuery`\"\u003e`logQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rumQuery`\" pulumi-lang-dotnet=\"`RumQuery`\" pulumi-lang-go=\"`rumQuery`\" pulumi-lang-python=\"`rum_query`\" pulumi-lang-yaml=\"`rumQuery`\" pulumi-lang-java=\"`rumQuery`\"\u003e`rumQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityQuery`\" pulumi-lang-dotnet=\"`SecurityQuery`\" pulumi-lang-go=\"`securityQuery`\" pulumi-lang-python=\"`security_query`\" pulumi-lang-yaml=\"`securityQuery`\" pulumi-lang-java=\"`securityQuery`\"\u003e`securityQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`processQuery`\" pulumi-lang-dotnet=\"`ProcessQuery`\" pulumi-lang-go=\"`processQuery`\" pulumi-lang-python=\"`process_query`\" pulumi-lang-yaml=\"`processQuery`\" pulumi-lang-java=\"`processQuery`\"\u003e`processQuery`\u003c/span\u003e is required within the \u003cspan pulumi-lang-nodejs=\"`request`\" pulumi-lang-dotnet=\"`Request`\" pulumi-lang-go=\"`request`\" pulumi-lang-python=\"`request`\" pulumi-lang-yaml=\"`request`\" pulumi-lang-java=\"`request`\"\u003e`request`\u003c/span\u003e block).\n"
                },
                "styles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionStyle:PowerpackWidgetToplistDefinitionStyle"
                    },
                    "description": "The style of the widget\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "hideIncompleteCostData"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetToplistDefinitionCustomLink:PowerpackWidgetToplistDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequest:PowerpackWidgetToplistDefinitionRequest": {
            "properties": {
                "apmQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestApmQuery:PowerpackWidgetToplistDefinitionRequestApmQuery",
                    "description": "The query to use for this widget.\n"
                },
                "auditQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQuery:PowerpackWidgetToplistDefinitionRequestAuditQuery",
                    "description": "The query to use for this widget.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestConditionalFormat:PowerpackWidgetToplistDefinitionRequestConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormula:PowerpackWidgetToplistDefinitionRequestFormula"
                    }
                },
                "logQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestLogQuery:PowerpackWidgetToplistDefinitionRequestLogQuery",
                    "description": "The query to use for this widget.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestProcessQuery:PowerpackWidgetToplistDefinitionRequestProcessQuery",
                    "description": "The process query to use in the widget. The structure of this block is described below.\n"
                },
                "q": {
                    "type": "string",
                    "description": "The metric query to use for this widget.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQuery:PowerpackWidgetToplistDefinitionRequestQuery"
                    }
                },
                "rumQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestRumQuery:PowerpackWidgetToplistDefinitionRequestRumQuery",
                    "description": "The query to use for this widget.\n"
                },
                "securityQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQuery:PowerpackWidgetToplistDefinitionRequestSecurityQuery",
                    "description": "The query to use for this widget.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestStyle:PowerpackWidgetToplistDefinitionRequestStyle",
                    "description": "Define request for the widget's style.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestApmQuery:PowerpackWidgetToplistDefinitionRequestApmQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestApmQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestApmQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestApmQueryGroupBy:PowerpackWidgetToplistDefinitionRequestApmQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestApmQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestApmQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestApmQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestApmQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestApmQueryGroupBy:PowerpackWidgetToplistDefinitionRequestApmQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestApmQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestApmQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestApmQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestApmQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestApmQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQuery:PowerpackWidgetToplistDefinitionRequestAuditQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestAuditQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQueryGroupBy:PowerpackWidgetToplistDefinitionRequestAuditQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestAuditQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestAuditQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQueryGroupBy:PowerpackWidgetToplistDefinitionRequestAuditQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestAuditQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestAuditQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestConditionalFormat:PowerpackWidgetToplistDefinitionRequestConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormula:PowerpackWidgetToplistDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaConditionalFormat:PowerpackWidgetToplistDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaLimit:PowerpackWidgetToplistDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormat:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaStyle:PowerpackWidgetToplistDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaConditionalFormat:PowerpackWidgetToplistDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaLimit:PowerpackWidgetToplistDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormat:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetToplistDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestFormulaStyle:PowerpackWidgetToplistDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestLogQuery:PowerpackWidgetToplistDefinitionRequestLogQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestLogQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestLogQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestLogQueryGroupBy:PowerpackWidgetToplistDefinitionRequestLogQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestLogQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestLogQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestLogQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestLogQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestLogQueryGroupBy:PowerpackWidgetToplistDefinitionRequestLogQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestLogQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestLogQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestLogQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestLogQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestLogQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestProcessQuery:PowerpackWidgetToplistDefinitionRequestProcessQuery": {
            "properties": {
                "filterBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of processes.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The max number of items in the filter list.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "Your chosen metric.\n"
                },
                "searchBy": {
                    "type": "string",
                    "description": "Your chosen search term.\n"
                }
            },
            "type": "object",
            "required": [
                "metric"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQuery:PowerpackWidgetToplistDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetToplistDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryCloudCostQuery:PowerpackWidgetToplistDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQuery:PowerpackWidgetToplistDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryMetricQuery:PowerpackWidgetToplistDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryProcessQuery:PowerpackWidgetToplistDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQuerySloQuery:PowerpackWidgetToplistDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetToplistDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryCloudCostQuery:PowerpackWidgetToplistDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQuery:PowerpackWidgetToplistDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryCompute:PowerpackWidgetToplistDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQuerySearch:PowerpackWidgetToplistDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryCompute:PowerpackWidgetToplistDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetToplistDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryEventQuerySearch:PowerpackWidgetToplistDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryMetricQuery:PowerpackWidgetToplistDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQueryProcessQuery:PowerpackWidgetToplistDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestQuerySloQuery:PowerpackWidgetToplistDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestRumQuery:PowerpackWidgetToplistDefinitionRequestRumQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestRumQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestRumQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestRumQueryGroupBy:PowerpackWidgetToplistDefinitionRequestRumQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestRumQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestRumQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestRumQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestRumQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestRumQueryGroupBy:PowerpackWidgetToplistDefinitionRequestRumQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestRumQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestRumQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestRumQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestRumQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestRumQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQuery:PowerpackWidgetToplistDefinitionRequestSecurityQuery": {
            "properties": {
                "computeQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestSecurityQueryComputeQuery",
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. The map keys are listed below.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetToplistDefinitionRequestSecurityQueryGroupBy"
                    },
                    "description": "Multiple \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "index": {
                    "type": "string",
                    "description": "The name of the index to query.\n"
                },
                "multiComputes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestSecurityQueryMultiCompute"
                    },
                    "description": "\u003cspan pulumi-lang-nodejs=\"`computeQuery`\" pulumi-lang-dotnet=\"`ComputeQuery`\" pulumi-lang-go=\"`computeQuery`\" pulumi-lang-python=\"`compute_query`\" pulumi-lang-yaml=\"`computeQuery`\" pulumi-lang-java=\"`computeQuery`\"\u003e`computeQuery`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e is required. Multiple \u003cspan pulumi-lang-nodejs=\"`multiCompute`\" pulumi-lang-dotnet=\"`MultiCompute`\" pulumi-lang-go=\"`multiCompute`\" pulumi-lang-python=\"`multi_compute`\" pulumi-lang-yaml=\"`multiCompute`\" pulumi-lang-java=\"`multiCompute`\"\u003e`multiCompute`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "searchQuery": {
                    "type": "string",
                    "description": "The search query to use.\n"
                }
            },
            "type": "object",
            "required": [
                "index"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQueryComputeQuery:PowerpackWidgetToplistDefinitionRequestSecurityQueryComputeQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQueryGroupBy:PowerpackWidgetToplistDefinitionRequestSecurityQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The maximum number of items in the group.\n"
                },
                "sortQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery",
                    "description": "A list of exactly one element describing the sort query to use.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery:PowerpackWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Widget sorting methods. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation",
                "order"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestSecurityQueryMultiCompute:PowerpackWidgetToplistDefinitionRequestSecurityQueryMultiCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method.\n"
                },
                "facet": {
                    "type": "string",
                    "description": "The facet name.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Define the time interval in seconds.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetToplistDefinitionRequestStyle:PowerpackWidgetToplistDefinitionRequestStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetToplistDefinitionStyle:PowerpackWidgetToplistDefinitionStyle": {
            "properties": {
                "displays": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetToplistDefinitionStyleDisplay:PowerpackWidgetToplistDefinitionStyleDisplay"
                    },
                    "description": "The display mode for the widget.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette for the widget.\n"
                },
                "scaling": {
                    "type": "string",
                    "description": "The scaling mode for the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`absolute`\" pulumi-lang-dotnet=\"`Absolute`\" pulumi-lang-go=\"`absolute`\" pulumi-lang-python=\"`absolute`\" pulumi-lang-yaml=\"`absolute`\" pulumi-lang-java=\"`absolute`\"\u003e`absolute`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`relative`\" pulumi-lang-dotnet=\"`Relative`\" pulumi-lang-go=\"`relative`\" pulumi-lang-python=\"`relative`\" pulumi-lang-yaml=\"`relative`\" pulumi-lang-java=\"`relative`\"\u003e`relative`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "scaling"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetToplistDefinitionStyleDisplay:PowerpackWidgetToplistDefinitionStyleDisplay": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "The display type for the widget.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/PowerpackWidgetTopologyMapDefinition:PowerpackWidgetTopologyMapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTopologyMapDefinitionCustomLink:PowerpackWidgetTopologyMapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTopologyMapDefinitionRequest:PowerpackWidgetTopologyMapDefinitionRequest"
                    },
                    "description": "A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (\u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`requestType`\" pulumi-lang-dotnet=\"`RequestType`\" pulumi-lang-go=\"`requestType`\" pulumi-lang-python=\"`request_type`\" pulumi-lang-yaml=\"`requestType`\" pulumi-lang-java=\"`requestType`\"\u003e`requestType`\u003c/span\u003e are required within the request).\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTopologyMapDefinitionCustomLink:PowerpackWidgetTopologyMapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTopologyMapDefinitionRequest:PowerpackWidgetTopologyMapDefinitionRequest": {
            "properties": {
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTopologyMapDefinitionRequestQuery:PowerpackWidgetTopologyMapDefinitionRequestQuery"
                    },
                    "description": "The query for a Topology request.\n"
                },
                "requestType": {
                    "type": "string",
                    "description": "The request type for the Topology request ('topology'). Valid values are \u003cspan pulumi-lang-nodejs=\"`topology`\" pulumi-lang-dotnet=\"`Topology`\" pulumi-lang-go=\"`topology`\" pulumi-lang-python=\"`topology`\" pulumi-lang-yaml=\"`topology`\" pulumi-lang-java=\"`topology`\"\u003e`topology`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "queries",
                "requestType"
            ]
        },
        "datadog:index/PowerpackWidgetTopologyMapDefinitionRequestQuery:PowerpackWidgetTopologyMapDefinitionRequestQuery": {
            "properties": {
                "dataSource": {
                    "type": "string",
                    "description": "The data source for the Topology request ('service*map' or 'data*streams'). Valid values are \u003cspan pulumi-lang-nodejs=\"`dataStreams`\" pulumi-lang-dotnet=\"`DataStreams`\" pulumi-lang-go=\"`dataStreams`\" pulumi-lang-python=\"`data_streams`\" pulumi-lang-yaml=\"`dataStreams`\" pulumi-lang-java=\"`dataStreams`\"\u003e`dataStreams`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`serviceMap`\" pulumi-lang-dotnet=\"`ServiceMap`\" pulumi-lang-go=\"`serviceMap`\" pulumi-lang-python=\"`service_map`\" pulumi-lang-yaml=\"`serviceMap`\" pulumi-lang-java=\"`serviceMap`\"\u003e`serviceMap`\u003c/span\u003e.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Your environment and primary tag (or `*` if enabled for your account).\n"
                },
                "service": {
                    "type": "string",
                    "description": "The ID of the service to map.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "filters",
                "service"
            ]
        },
        "datadog:index/PowerpackWidgetTraceServiceDefinition:PowerpackWidgetTraceServiceDefinition": {
            "properties": {
                "displayFormat": {
                    "type": "string",
                    "description": "The number of columns to display. Valid values are \u003cspan pulumi-lang-nodejs=\"`oneColumn`\" pulumi-lang-dotnet=\"`OneColumn`\" pulumi-lang-go=\"`oneColumn`\" pulumi-lang-python=\"`one_column`\" pulumi-lang-yaml=\"`oneColumn`\" pulumi-lang-java=\"`oneColumn`\"\u003e`oneColumn`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`twoColumn`\" pulumi-lang-dotnet=\"`TwoColumn`\" pulumi-lang-go=\"`twoColumn`\" pulumi-lang-python=\"`two_column`\" pulumi-lang-yaml=\"`twoColumn`\" pulumi-lang-java=\"`twoColumn`\"\u003e`twoColumn`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`threeColumn`\" pulumi-lang-dotnet=\"`ThreeColumn`\" pulumi-lang-go=\"`threeColumn`\" pulumi-lang-python=\"`three_column`\" pulumi-lang-yaml=\"`threeColumn`\" pulumi-lang-java=\"`threeColumn`\"\u003e`threeColumn`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "hideIncompleteCostData": {
                    "type": "boolean",
                    "description": "Hide any portion of the widget's timeframe that is incomplete due to cost data not being available.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "showBreakdown": {
                    "type": "boolean",
                    "description": "Whether to show the latency breakdown or not.\n"
                },
                "showDistribution": {
                    "type": "boolean",
                    "description": "Whether to show the latency distribution or not.\n"
                },
                "showErrors": {
                    "type": "boolean",
                    "description": "Whether to show the error metrics or not.\n"
                },
                "showHits": {
                    "type": "boolean",
                    "description": "Whether to show the hits metrics or not\n"
                },
                "showLatency": {
                    "type": "boolean",
                    "description": "Whether to show the latency metrics or not.\n"
                },
                "showResourceList": {
                    "type": "boolean",
                    "description": "Whether to show the resource list or not.\n"
                },
                "sizeFormat": {
                    "type": "string",
                    "description": "The size of the widget. Valid values are \u003cspan pulumi-lang-nodejs=\"`small`\" pulumi-lang-dotnet=\"`Small`\" pulumi-lang-go=\"`small`\" pulumi-lang-python=\"`small`\" pulumi-lang-yaml=\"`small`\" pulumi-lang-java=\"`small`\"\u003e`small`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`large`\" pulumi-lang-dotnet=\"`Large`\" pulumi-lang-go=\"`large`\" pulumi-lang-python=\"`large`\" pulumi-lang-yaml=\"`large`\" pulumi-lang-java=\"`large`\"\u003e`large`\u003c/span\u003e.\n"
                },
                "spanName": {
                    "type": "string",
                    "description": "APM span name\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                },
                "titleAlign": {
                    "type": "string",
                    "description": "The alignment of the widget's title. Valid values are \u003cspan pulumi-lang-nodejs=\"`center`\" pulumi-lang-dotnet=\"`Center`\" pulumi-lang-go=\"`center`\" pulumi-lang-python=\"`center`\" pulumi-lang-yaml=\"`center`\" pulumi-lang-java=\"`center`\"\u003e`center`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "titleSize": {
                    "type": "string",
                    "description": "The size of the widget's title (defaults to 16).\n"
                }
            },
            "type": "object",
            "required": [
                "env",
                "service",
                "spanName"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "env",
                        "hideIncompleteCostData",
                        "service",
                        "spanName"
                    ]
                }
            }
        },
        "datadog:index/PowerpackWidgetTreemapDefinition:PowerpackWidgetTreemapDefinition": {
            "properties": {
                "customLinks": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionCustomLink:PowerpackWidgetTreemapDefinitionCustomLink"
                    },
                    "description": "A nested block describing a custom link. Multiple \u003cspan pulumi-lang-nodejs=\"`customLink`\" pulumi-lang-dotnet=\"`CustomLink`\" pulumi-lang-go=\"`customLink`\" pulumi-lang-python=\"`custom_link`\" pulumi-lang-yaml=\"`customLink`\" pulumi-lang-java=\"`customLink`\"\u003e`customLink`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "requests": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequest:PowerpackWidgetTreemapDefinitionRequest"
                    },
                    "description": "Nested block describing the request to use when displaying the widget.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the widget.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionCustomLink:PowerpackWidgetTreemapDefinitionCustomLink": {
            "properties": {
                "isHidden": {
                    "type": "boolean",
                    "description": "The flag for toggling context menu link visibility.\n"
                },
                "label": {
                    "type": "string",
                    "description": "The label for the custom link URL.\n"
                },
                "link": {
                    "type": "string",
                    "description": "The URL of the custom link.\n"
                },
                "overrideLabel": {
                    "type": "string",
                    "description": "The label ID that refers to a context menu link item. When \u003cspan pulumi-lang-nodejs=\"`overrideLabel`\" pulumi-lang-dotnet=\"`OverrideLabel`\" pulumi-lang-go=\"`overrideLabel`\" pulumi-lang-python=\"`override_label`\" pulumi-lang-yaml=\"`overrideLabel`\" pulumi-lang-java=\"`overrideLabel`\"\u003e`overrideLabel`\u003c/span\u003e is provided, the client request omits the label field.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequest:PowerpackWidgetTreemapDefinitionRequest": {
            "properties": {
                "formulas": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormula:PowerpackWidgetTreemapDefinitionRequestFormula"
                    }
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQuery:PowerpackWidgetTreemapDefinitionRequestQuery"
                    }
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormula:PowerpackWidgetTreemapDefinitionRequestFormula": {
            "properties": {
                "alias": {
                    "type": "string",
                    "description": "An expression alias.\n"
                },
                "cellDisplayMode": {
                    "type": "string",
                    "description": "A list of display modes for each table cell. Valid values are \u003cspan pulumi-lang-nodejs=\"`number`\" pulumi-lang-dotnet=\"`Number`\" pulumi-lang-go=\"`number`\" pulumi-lang-python=\"`number`\" pulumi-lang-yaml=\"`number`\" pulumi-lang-java=\"`number`\"\u003e`number`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`bar`\" pulumi-lang-dotnet=\"`Bar`\" pulumi-lang-go=\"`bar`\" pulumi-lang-python=\"`bar`\" pulumi-lang-yaml=\"`bar`\" pulumi-lang-java=\"`bar`\"\u003e`bar`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`trend`\" pulumi-lang-dotnet=\"`Trend`\" pulumi-lang-go=\"`trend`\" pulumi-lang-python=\"`trend`\" pulumi-lang-yaml=\"`trend`\" pulumi-lang-java=\"`trend`\"\u003e`trend`\u003c/span\u003e.\n"
                },
                "conditionalFormats": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaConditionalFormat:PowerpackWidgetTreemapDefinitionRequestFormulaConditionalFormat"
                    },
                    "description": "Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple \u003cspan pulumi-lang-nodejs=\"`conditionalFormats`\" pulumi-lang-dotnet=\"`ConditionalFormats`\" pulumi-lang-go=\"`conditionalFormats`\" pulumi-lang-python=\"`conditional_formats`\" pulumi-lang-yaml=\"`conditionalFormats`\" pulumi-lang-java=\"`conditionalFormats`\"\u003e`conditionalFormats`\u003c/span\u003e blocks are allowed using the structure below.\n"
                },
                "formulaExpression": {
                    "type": "string",
                    "description": "A string expression built from queries, formulas, and functions.\n"
                },
                "limit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaLimit:PowerpackWidgetTreemapDefinitionRequestFormulaLimit",
                    "description": "The options for limiting results returned.\n"
                },
                "numberFormat": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormat:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormat",
                    "description": "Number formatting options for the formula.\n"
                },
                "style": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaStyle:PowerpackWidgetTreemapDefinitionRequestFormulaStyle",
                    "description": "Styling options for widget formulas.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaConditionalFormat:PowerpackWidgetTreemapDefinitionRequestFormulaConditionalFormat": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator to use. Valid values are `=`, `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "customBgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the background, same values available as palette.\n"
                },
                "customFgColor": {
                    "type": "string",
                    "description": "The color palette to apply to the foreground, same values available as palette.\n"
                },
                "hideValue": {
                    "type": "boolean",
                    "description": "Setting this to True hides values.\n"
                },
                "imageUrl": {
                    "type": "string",
                    "description": "Displays an image as the background.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric from the request to correlate with this conditional format.\n"
                },
                "palette": {
                    "type": "string",
                    "description": "The color palette to apply. Valid values are \u003cspan pulumi-lang-nodejs=\"`blue`\" pulumi-lang-dotnet=\"`Blue`\" pulumi-lang-go=\"`blue`\" pulumi-lang-python=\"`blue`\" pulumi-lang-yaml=\"`blue`\" pulumi-lang-java=\"`blue`\"\u003e`blue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customBg`\" pulumi-lang-dotnet=\"`CustomBg`\" pulumi-lang-go=\"`customBg`\" pulumi-lang-python=\"`custom_bg`\" pulumi-lang-yaml=\"`customBg`\" pulumi-lang-java=\"`customBg`\"\u003e`customBg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customImage`\" pulumi-lang-dotnet=\"`CustomImage`\" pulumi-lang-go=\"`customImage`\" pulumi-lang-python=\"`custom_image`\" pulumi-lang-yaml=\"`customImage`\" pulumi-lang-java=\"`customImage`\"\u003e`customImage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customText`\" pulumi-lang-dotnet=\"`CustomText`\" pulumi-lang-go=\"`customText`\" pulumi-lang-python=\"`custom_text`\" pulumi-lang-yaml=\"`customText`\" pulumi-lang-java=\"`customText`\"\u003e`customText`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grayOnWhite`\" pulumi-lang-dotnet=\"`GrayOnWhite`\" pulumi-lang-go=\"`grayOnWhite`\" pulumi-lang-python=\"`gray_on_white`\" pulumi-lang-yaml=\"`grayOnWhite`\" pulumi-lang-java=\"`grayOnWhite`\"\u003e`grayOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grey`\" pulumi-lang-dotnet=\"`Grey`\" pulumi-lang-go=\"`grey`\" pulumi-lang-python=\"`grey`\" pulumi-lang-yaml=\"`grey`\" pulumi-lang-java=\"`grey`\"\u003e`grey`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`green`\" pulumi-lang-dotnet=\"`Green`\" pulumi-lang-go=\"`green`\" pulumi-lang-python=\"`green`\" pulumi-lang-yaml=\"`green`\" pulumi-lang-java=\"`green`\"\u003e`green`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`orange`\" pulumi-lang-dotnet=\"`Orange`\" pulumi-lang-go=\"`orange`\" pulumi-lang-python=\"`orange`\" pulumi-lang-yaml=\"`orange`\" pulumi-lang-java=\"`orange`\"\u003e`orange`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`red`\" pulumi-lang-dotnet=\"`Red`\" pulumi-lang-go=\"`red`\" pulumi-lang-python=\"`red`\" pulumi-lang-yaml=\"`red`\" pulumi-lang-java=\"`red`\"\u003e`red`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redOnWhite`\" pulumi-lang-dotnet=\"`RedOnWhite`\" pulumi-lang-go=\"`redOnWhite`\" pulumi-lang-python=\"`red_on_white`\" pulumi-lang-yaml=\"`redOnWhite`\" pulumi-lang-java=\"`redOnWhite`\"\u003e`redOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGray`\" pulumi-lang-dotnet=\"`WhiteOnGray`\" pulumi-lang-go=\"`whiteOnGray`\" pulumi-lang-python=\"`white_on_gray`\" pulumi-lang-yaml=\"`whiteOnGray`\" pulumi-lang-java=\"`whiteOnGray`\"\u003e`whiteOnGray`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnGreen`\" pulumi-lang-dotnet=\"`WhiteOnGreen`\" pulumi-lang-go=\"`whiteOnGreen`\" pulumi-lang-python=\"`white_on_green`\" pulumi-lang-yaml=\"`whiteOnGreen`\" pulumi-lang-java=\"`whiteOnGreen`\"\u003e`whiteOnGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`greenOnWhite`\" pulumi-lang-dotnet=\"`GreenOnWhite`\" pulumi-lang-go=\"`greenOnWhite`\" pulumi-lang-python=\"`green_on_white`\" pulumi-lang-yaml=\"`greenOnWhite`\" pulumi-lang-java=\"`greenOnWhite`\"\u003e`greenOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnRed`\" pulumi-lang-dotnet=\"`WhiteOnRed`\" pulumi-lang-go=\"`whiteOnRed`\" pulumi-lang-python=\"`white_on_red`\" pulumi-lang-yaml=\"`whiteOnRed`\" pulumi-lang-java=\"`whiteOnRed`\"\u003e`whiteOnRed`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`whiteOnYellow`\" pulumi-lang-dotnet=\"`WhiteOnYellow`\" pulumi-lang-go=\"`whiteOnYellow`\" pulumi-lang-python=\"`white_on_yellow`\" pulumi-lang-yaml=\"`whiteOnYellow`\" pulumi-lang-java=\"`whiteOnYellow`\"\u003e`whiteOnYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`yellowOnWhite`\" pulumi-lang-dotnet=\"`YellowOnWhite`\" pulumi-lang-go=\"`yellowOnWhite`\" pulumi-lang-python=\"`yellow_on_white`\" pulumi-lang-yaml=\"`yellowOnWhite`\" pulumi-lang-java=\"`yellowOnWhite`\"\u003e`yellowOnWhite`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightYellow`\" pulumi-lang-dotnet=\"`BlackOnLightYellow`\" pulumi-lang-go=\"`blackOnLightYellow`\" pulumi-lang-python=\"`black_on_light_yellow`\" pulumi-lang-yaml=\"`blackOnLightYellow`\" pulumi-lang-java=\"`blackOnLightYellow`\"\u003e`blackOnLightYellow`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightGreen`\" pulumi-lang-dotnet=\"`BlackOnLightGreen`\" pulumi-lang-go=\"`blackOnLightGreen`\" pulumi-lang-python=\"`black_on_light_green`\" pulumi-lang-yaml=\"`blackOnLightGreen`\" pulumi-lang-java=\"`blackOnLightGreen`\"\u003e`blackOnLightGreen`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blackOnLightRed`\" pulumi-lang-dotnet=\"`BlackOnLightRed`\" pulumi-lang-go=\"`blackOnLightRed`\" pulumi-lang-python=\"`black_on_light_red`\" pulumi-lang-yaml=\"`blackOnLightRed`\" pulumi-lang-java=\"`blackOnLightRed`\"\u003e`blackOnLightRed`\u003c/span\u003e.\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "Defines the displayed timeframe.\n"
                },
                "value": {
                    "type": "number",
                    "description": "A value for the comparator.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "palette",
                "value"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaLimit:PowerpackWidgetTreemapDefinitionRequestFormulaLimit": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "The number of results to return.\n"
                },
                "order": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormat:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormat": {
            "properties": {
                "unit": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnit",
                    "description": "Unit of the number format.\n"
                },
                "unitScale": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitScale"
                }
            },
            "type": "object",
            "required": [
                "unit"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnit:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnit": {
            "properties": {
                "canonical": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCanonical",
                    "description": "Canonical Units\n"
                },
                "custom": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCustom",
                    "description": "Use custom (non canonical metrics)\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCanonical:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCanonical": {
            "properties": {
                "perUnitName": {
                    "type": "string",
                    "description": "per unit name. If you want to represent megabytes/s, you set 'unit*name' = 'megabyte' and 'per*unit_name = 'second'\n"
                },
                "unitName": {
                    "type": "string",
                    "description": "Unit name. It should be in singular form ('megabyte' and not 'megabytes')\n"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCustom:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitCustom": {
            "properties": {
                "label": {
                    "type": "string",
                    "description": "Unit label\n"
                }
            },
            "type": "object",
            "required": [
                "label"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitScale:PowerpackWidgetTreemapDefinitionRequestFormulaNumberFormatUnitScale": {
            "properties": {
                "unitName": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "unitName"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestFormulaStyle:PowerpackWidgetTreemapDefinitionRequestFormulaStyle": {
            "properties": {
                "palette": {
                    "type": "string",
                    "description": "The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors.\n"
                },
                "paletteIndex": {
                    "type": "integer",
                    "description": "Index specifying which color to use within the palette.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQuery:PowerpackWidgetTreemapDefinitionRequestQuery": {
            "properties": {
                "apmDependencyStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery",
                    "description": "The APM Dependency Stats query using formulas and functions.\n"
                },
                "apmResourceStatsQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery",
                    "description": "The APM Resource Stats query using formulas and functions.\n"
                },
                "cloudCostQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryCloudCostQuery:PowerpackWidgetTreemapDefinitionRequestQueryCloudCostQuery",
                    "description": "The Cloud Cost query using formulas and functions.\n"
                },
                "eventQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQuery:PowerpackWidgetTreemapDefinitionRequestQueryEventQuery",
                    "description": "A timeseries formula and functions events query.\n"
                },
                "metricQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryMetricQuery:PowerpackWidgetTreemapDefinitionRequestQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                },
                "processQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryProcessQuery:PowerpackWidgetTreemapDefinitionRequestQueryProcessQuery",
                    "description": "The process query using formulas and functions.\n"
                },
                "sloQuery": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQuerySloQuery:PowerpackWidgetTreemapDefinitionRequestQuerySloQuery",
                    "description": "The SLO query using formulas and functions.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery:PowerpackWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Dependency Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmDependencyStats`\" pulumi-lang-dotnet=\"`ApmDependencyStats`\" pulumi-lang-go=\"`apmDependencyStats`\" pulumi-lang-python=\"`apm_dependency_stats`\" pulumi-lang-yaml=\"`apmDependencyStats`\" pulumi-lang-java=\"`apmDependencyStats`\"\u003e`apmDependencyStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "isUpstream": {
                    "type": "boolean",
                    "description": "Determines whether stats for upstream or downstream dependencies should be queried.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`avgDuration`\" pulumi-lang-dotnet=\"`AvgDuration`\" pulumi-lang-go=\"`avgDuration`\" pulumi-lang-python=\"`avg_duration`\" pulumi-lang-yaml=\"`avgDuration`\" pulumi-lang-java=\"`avgDuration`\"\u003e`avgDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgRootDuration`\" pulumi-lang-dotnet=\"`AvgRootDuration`\" pulumi-lang-go=\"`avgRootDuration`\" pulumi-lang-python=\"`avg_root_duration`\" pulumi-lang-yaml=\"`avgRootDuration`\" pulumi-lang-java=\"`avgRootDuration`\"\u003e`avgRootDuration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avgSpansPerTrace`\" pulumi-lang-dotnet=\"`AvgSpansPerTrace`\" pulumi-lang-go=\"`avgSpansPerTrace`\" pulumi-lang-python=\"`avg_spans_per_trace`\" pulumi-lang-yaml=\"`avgSpansPerTrace`\" pulumi-lang-java=\"`avgSpansPerTrace`\"\u003e`avgSpansPerTrace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctExecTime`\" pulumi-lang-dotnet=\"`PctExecTime`\" pulumi-lang-go=\"`pctExecTime`\" pulumi-lang-python=\"`pct_exec_time`\" pulumi-lang-yaml=\"`pctExecTime`\" pulumi-lang-java=\"`pctExecTime`\"\u003e`pctExecTime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pctOfTraces`\" pulumi-lang-dotnet=\"`PctOfTraces`\" pulumi-lang-go=\"`pctOfTraces`\" pulumi-lang-python=\"`pct_of_traces`\" pulumi-lang-yaml=\"`pctOfTraces`\" pulumi-lang-java=\"`pctOfTraces`\"\u003e`pctOfTraces`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`totalTracesCount`\" pulumi-lang-dotnet=\"`TotalTracesCount`\" pulumi-lang-go=\"`totalTracesCount`\" pulumi-lang-python=\"`total_traces_count`\" pulumi-lang-yaml=\"`totalTracesCount`\" pulumi-lang-java=\"`totalTracesCount`\"\u003e`totalTracesCount`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "operationName",
                "resourceName",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery:PowerpackWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery": {
            "properties": {
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for APM Resource Stats queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`apmResourceStats`\" pulumi-lang-dotnet=\"`ApmResourceStats`\" pulumi-lang-go=\"`apmResourceStats`\" pulumi-lang-python=\"`apm_resource_stats`\" pulumi-lang-yaml=\"`apmResourceStats`\" pulumi-lang-java=\"`apmResourceStats`\"\u003e`apmResourceStats`\u003c/span\u003e.\n"
                },
                "env": {
                    "type": "string",
                    "description": "APM environment.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Array of fields to group results by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "operationName": {
                    "type": "string",
                    "description": "Name of operation on service.\n"
                },
                "primaryTagName": {
                    "type": "string",
                    "description": "The name of the second primary tag used within APM; required when \u003cspan pulumi-lang-nodejs=\"`primaryTagValue`\" pulumi-lang-dotnet=\"`PrimaryTagValue`\" pulumi-lang-go=\"`primaryTagValue`\" pulumi-lang-python=\"`primary_tag_value`\" pulumi-lang-yaml=\"`primaryTagValue`\" pulumi-lang-java=\"`primaryTagValue`\"\u003e`primaryTagValue`\u003c/span\u003e is specified. See https://docs.datadoghq.com/tracing/guide/setting*primary*tags*to*scope/#add-a-second-primary-tag-in-datadog.\n"
                },
                "primaryTagValue": {
                    "type": "string",
                    "description": "Filter APM data by the second primary tag. \u003cspan pulumi-lang-nodejs=\"`primaryTagName`\" pulumi-lang-dotnet=\"`PrimaryTagName`\" pulumi-lang-go=\"`primaryTagName`\" pulumi-lang-python=\"`primary_tag_name`\" pulumi-lang-yaml=\"`primaryTagName`\" pulumi-lang-java=\"`primaryTagName`\"\u003e`primaryTagName`\u003c/span\u003e must also be specified.\n"
                },
                "resourceName": {
                    "type": "string",
                    "description": "APM resource.\n"
                },
                "service": {
                    "type": "string",
                    "description": "APM service.\n"
                },
                "stat": {
                    "type": "string",
                    "description": "APM statistic. Valid values are \u003cspan pulumi-lang-nodejs=\"`errors`\" pulumi-lang-dotnet=\"`Errors`\" pulumi-lang-go=\"`errors`\" pulumi-lang-python=\"`errors`\" pulumi-lang-yaml=\"`errors`\" pulumi-lang-java=\"`errors`\"\u003e`errors`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorRate`\" pulumi-lang-dotnet=\"`ErrorRate`\" pulumi-lang-go=\"`errorRate`\" pulumi-lang-python=\"`error_rate`\" pulumi-lang-yaml=\"`errorRate`\" pulumi-lang-java=\"`errorRate`\"\u003e`errorRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hits`\" pulumi-lang-dotnet=\"`Hits`\" pulumi-lang-go=\"`hits`\" pulumi-lang-python=\"`hits`\" pulumi-lang-yaml=\"`hits`\" pulumi-lang-java=\"`hits`\"\u003e`hits`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyAvg`\" pulumi-lang-dotnet=\"`LatencyAvg`\" pulumi-lang-go=\"`latencyAvg`\" pulumi-lang-python=\"`latency_avg`\" pulumi-lang-yaml=\"`latencyAvg`\" pulumi-lang-java=\"`latencyAvg`\"\u003e`latencyAvg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyDistribution`\" pulumi-lang-dotnet=\"`LatencyDistribution`\" pulumi-lang-go=\"`latencyDistribution`\" pulumi-lang-python=\"`latency_distribution`\" pulumi-lang-yaml=\"`latencyDistribution`\" pulumi-lang-java=\"`latencyDistribution`\"\u003e`latencyDistribution`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyMax`\" pulumi-lang-dotnet=\"`LatencyMax`\" pulumi-lang-go=\"`latencyMax`\" pulumi-lang-python=\"`latency_max`\" pulumi-lang-yaml=\"`latencyMax`\" pulumi-lang-java=\"`latencyMax`\"\u003e`latencyMax`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP50`\" pulumi-lang-dotnet=\"`LatencyP50`\" pulumi-lang-go=\"`latencyP50`\" pulumi-lang-python=\"`latency_p50`\" pulumi-lang-yaml=\"`latencyP50`\" pulumi-lang-java=\"`latencyP50`\"\u003e`latencyP50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP75`\" pulumi-lang-dotnet=\"`LatencyP75`\" pulumi-lang-go=\"`latencyP75`\" pulumi-lang-python=\"`latency_p75`\" pulumi-lang-yaml=\"`latencyP75`\" pulumi-lang-java=\"`latencyP75`\"\u003e`latencyP75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP90`\" pulumi-lang-dotnet=\"`LatencyP90`\" pulumi-lang-go=\"`latencyP90`\" pulumi-lang-python=\"`latency_p90`\" pulumi-lang-yaml=\"`latencyP90`\" pulumi-lang-java=\"`latencyP90`\"\u003e`latencyP90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP95`\" pulumi-lang-dotnet=\"`LatencyP95`\" pulumi-lang-go=\"`latencyP95`\" pulumi-lang-python=\"`latency_p95`\" pulumi-lang-yaml=\"`latencyP95`\" pulumi-lang-java=\"`latencyP95`\"\u003e`latencyP95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`latencyP99`\" pulumi-lang-dotnet=\"`LatencyP99`\" pulumi-lang-go=\"`latencyP99`\" pulumi-lang-python=\"`latency_p99`\" pulumi-lang-yaml=\"`latencyP99`\" pulumi-lang-java=\"`latencyP99`\"\u003e`latencyP99`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "env",
                "name",
                "service",
                "stat"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryCloudCostQuery:PowerpackWidgetTreemapDefinitionRequestQueryCloudCostQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for cloud cost queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`cloudCost`\" pulumi-lang-dotnet=\"`CloudCost`\" pulumi-lang-go=\"`cloudCost`\" pulumi-lang-python=\"`cloud_cost`\" pulumi-lang-yaml=\"`cloudCost`\" pulumi-lang-java=\"`cloudCost`\"\u003e`cloudCost`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The cloud cost query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQuery:PowerpackWidgetTreemapDefinitionRequestQueryEventQuery": {
            "properties": {
                "computes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryCompute:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryCompute"
                    },
                    "description": "The compute options.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for event platform-based queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`profiles`\" pulumi-lang-dotnet=\"`Profiles`\" pulumi-lang-go=\"`profiles`\" pulumi-lang-python=\"`profiles`\" pulumi-lang-yaml=\"`profiles`\" pulumi-lang-java=\"`profiles`\"\u003e`profiles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciTests`\" pulumi-lang-dotnet=\"`CiTests`\" pulumi-lang-go=\"`ciTests`\" pulumi-lang-python=\"`ci_tests`\" pulumi-lang-yaml=\"`ciTests`\" pulumi-lang-java=\"`ciTests`\"\u003e`ciTests`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ciPipelines`\" pulumi-lang-dotnet=\"`CiPipelines`\" pulumi-lang-go=\"`ciPipelines`\" pulumi-lang-python=\"`ci_pipelines`\" pulumi-lang-yaml=\"`ciPipelines`\" pulumi-lang-java=\"`ciPipelines`\"\u003e`ciPipelines`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incidentAnalytics`\" pulumi-lang-dotnet=\"`IncidentAnalytics`\" pulumi-lang-go=\"`incidentAnalytics`\" pulumi-lang-python=\"`incident_analytics`\" pulumi-lang-yaml=\"`incidentAnalytics`\" pulumi-lang-java=\"`incidentAnalytics`\"\u003e`incidentAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`productAnalytics`\" pulumi-lang-dotnet=\"`ProductAnalytics`\" pulumi-lang-go=\"`productAnalytics`\" pulumi-lang-python=\"`product_analytics`\" pulumi-lang-yaml=\"`productAnalytics`\" pulumi-lang-java=\"`productAnalytics`\"\u003e`productAnalytics`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`onCallEvents`\" pulumi-lang-dotnet=\"`OnCallEvents`\" pulumi-lang-go=\"`onCallEvents`\" pulumi-lang-python=\"`on_call_events`\" pulumi-lang-yaml=\"`onCallEvents`\" pulumi-lang-java=\"`onCallEvents`\"\u003e`onCallEvents`\u003c/span\u003e.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupBy"
                    },
                    "description": "Group by options.\n"
                },
                "groupByFields": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupByFields",
                    "description": "Alternative group-by configuration that groups by multiple event facet fields. Use this or \u003cspan pulumi-lang-nodejs=\"`groupBy`\" pulumi-lang-dotnet=\"`GroupBy`\" pulumi-lang-go=\"`groupBy`\" pulumi-lang-python=\"`group_by`\" pulumi-lang-yaml=\"`groupBy`\" pulumi-lang-java=\"`groupBy`\"\u003e`groupBy`\u003c/span\u003e, not both.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of index names to query in the stream.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "search": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQuerySearch:PowerpackWidgetTreemapDefinitionRequestQueryEventQuerySearch",
                    "description": "The search options.\n"
                },
                "storage": {
                    "type": "string",
                    "description": "Storage location (private beta).\n"
                }
            },
            "type": "object",
            "required": [
                "computes",
                "dataSource",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryCompute:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryCompute": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "A time interval in milliseconds.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The measurable attribute to compute.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupBy:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupBy": {
            "properties": {
                "facet": {
                    "type": "string",
                    "description": "The event facet.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "facet"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupByFields:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupByFields": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of event facets to group by.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of groups to return.\n"
                },
                "sort": {
                    "$ref": "#/types/datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupByFieldsSort",
                    "description": "The options for sorting group by results.\n"
                }
            },
            "type": "object",
            "required": [
                "fields"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupByFieldsSort:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupByFieldsSort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation method for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort:PowerpackWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation methods for the event platform queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`median`\" pulumi-lang-dotnet=\"`Median`\" pulumi-lang-go=\"`median`\" pulumi-lang-python=\"`median`\" pulumi-lang-yaml=\"`median`\" pulumi-lang-java=\"`median`\"\u003e`median`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc75`\" pulumi-lang-dotnet=\"`Pc75`\" pulumi-lang-go=\"`pc75`\" pulumi-lang-python=\"`pc75`\" pulumi-lang-yaml=\"`pc75`\" pulumi-lang-java=\"`pc75`\"\u003e`pc75`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc90`\" pulumi-lang-dotnet=\"`Pc90`\" pulumi-lang-go=\"`pc90`\" pulumi-lang-python=\"`pc90`\" pulumi-lang-yaml=\"`pc90`\" pulumi-lang-java=\"`pc90`\"\u003e`pc90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc95`\" pulumi-lang-dotnet=\"`Pc95`\" pulumi-lang-go=\"`pc95`\" pulumi-lang-python=\"`pc95`\" pulumi-lang-yaml=\"`pc95`\" pulumi-lang-java=\"`pc95`\"\u003e`pc95`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc98`\" pulumi-lang-dotnet=\"`Pc98`\" pulumi-lang-go=\"`pc98`\" pulumi-lang-python=\"`pc98`\" pulumi-lang-yaml=\"`pc98`\" pulumi-lang-java=\"`pc98`\"\u003e`pc98`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`pc99`\" pulumi-lang-dotnet=\"`Pc99`\" pulumi-lang-go=\"`pc99`\" pulumi-lang-python=\"`pc99`\" pulumi-lang-yaml=\"`pc99`\" pulumi-lang-java=\"`pc99`\"\u003e`pc99`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The metric used for sorting group by results.\n"
                },
                "order": {
                    "type": "string",
                    "description": "Direction of sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregation"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryEventQuerySearch:PowerpackWidgetTreemapDefinitionRequestQueryEventQuerySearch": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The events search string.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryMetricQuery:PowerpackWidgetTreemapDefinitionRequestQueryMetricQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                },
                "semanticMode": {
                    "type": "string",
                    "description": "Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. Valid values are \u003cspan pulumi-lang-nodejs=\"`combined`\" pulumi-lang-dotnet=\"`Combined`\" pulumi-lang-go=\"`combined`\" pulumi-lang-python=\"`combined`\" pulumi-lang-yaml=\"`combined`\" pulumi-lang-java=\"`combined`\"\u003e`combined`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQueryProcessQuery:PowerpackWidgetTreemapDefinitionRequestQueryProcessQuery": {
            "properties": {
                "aggregator": {
                    "type": "string",
                    "description": "The aggregation methods available for metrics queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`last`\" pulumi-lang-dotnet=\"`Last`\" pulumi-lang-go=\"`last`\" pulumi-lang-python=\"`last`\" pulumi-lang-yaml=\"`last`\" pulumi-lang-java=\"`last`\"\u003e`last`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`area`\" pulumi-lang-dotnet=\"`Area`\" pulumi-lang-go=\"`area`\" pulumi-lang-python=\"`area`\" pulumi-lang-yaml=\"`area`\" pulumi-lang-java=\"`area`\"\u003e`area`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`l2norm`\" pulumi-lang-dotnet=\"`L2norm`\" pulumi-lang-go=\"`l2norm`\" pulumi-lang-python=\"`l2norm`\" pulumi-lang-yaml=\"`l2norm`\" pulumi-lang-java=\"`l2norm`\"\u003e`l2norm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`percentile`\" pulumi-lang-dotnet=\"`Percentile`\" pulumi-lang-go=\"`percentile`\" pulumi-lang-python=\"`percentile`\" pulumi-lang-yaml=\"`percentile`\" pulumi-lang-java=\"`percentile`\"\u003e`percentile`\u003c/span\u003e.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for process queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`process`\" pulumi-lang-dotnet=\"`Process`\" pulumi-lang-go=\"`process`\" pulumi-lang-python=\"`process`\" pulumi-lang-yaml=\"`process`\" pulumi-lang-java=\"`process`\"\u003e`process`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`container`\" pulumi-lang-dotnet=\"`Container`\" pulumi-lang-go=\"`container`\" pulumi-lang-python=\"`container`\" pulumi-lang-yaml=\"`container`\" pulumi-lang-java=\"`container`\"\u003e`container`\u003c/span\u003e.\n"
                },
                "isNormalizedCpu": {
                    "type": "boolean",
                    "description": "Whether to normalize the CPU percentages.\n"
                },
                "limit": {
                    "type": "integer",
                    "description": "The number of hits to return.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The process metric name.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sort": {
                    "type": "string",
                    "description": "The direction of the sort. Valid values are \u003cspan pulumi-lang-nodejs=\"`asc`\" pulumi-lang-dotnet=\"`Asc`\" pulumi-lang-go=\"`asc`\" pulumi-lang-python=\"`asc`\" pulumi-lang-yaml=\"`asc`\" pulumi-lang-java=\"`asc`\"\u003e`asc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`desc`\" pulumi-lang-dotnet=\"`Desc`\" pulumi-lang-go=\"`desc`\" pulumi-lang-python=\"`desc`\" pulumi-lang-yaml=\"`desc`\" pulumi-lang-java=\"`desc`\"\u003e`desc`\u003c/span\u003e. Defaults to `\"desc\"`.\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to filter by.\n"
                },
                "textFilter": {
                    "type": "string",
                    "description": "The text to use as a filter.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "metric",
                "name"
            ]
        },
        "datadog:index/PowerpackWidgetTreemapDefinitionRequestQuerySloQuery:PowerpackWidgetTreemapDefinitionRequestQuerySloQuery": {
            "properties": {
                "additionalQueryFilters": {
                    "type": "string",
                    "description": "Additional filters applied to the SLO query.\n"
                },
                "crossOrgUuids": {
                    "type": "string",
                    "description": "The source organization UUID for cross organization queries. Feature in Private Beta.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "The data source for SLO queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`slo`\" pulumi-lang-dotnet=\"`Slo`\" pulumi-lang-go=\"`slo`\" pulumi-lang-python=\"`slo`\" pulumi-lang-yaml=\"`slo`\" pulumi-lang-java=\"`slo`\"\u003e`slo`\u003c/span\u003e.\n"
                },
                "groupMode": {
                    "type": "string",
                    "description": "Group mode to query measures. Valid values are \u003cspan pulumi-lang-nodejs=\"`overall`\" pulumi-lang-dotnet=\"`Overall`\" pulumi-lang-go=\"`overall`\" pulumi-lang-python=\"`overall`\" pulumi-lang-yaml=\"`overall`\" pulumi-lang-java=\"`overall`\"\u003e`overall`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`components`\" pulumi-lang-dotnet=\"`Components`\" pulumi-lang-go=\"`components`\" pulumi-lang-python=\"`components`\" pulumi-lang-yaml=\"`components`\" pulumi-lang-java=\"`components`\"\u003e`components`\u003c/span\u003e. Defaults to `\"overall\"`.\n"
                },
                "measure": {
                    "type": "string",
                    "description": "SLO measures queries. Valid values are \u003cspan pulumi-lang-nodejs=\"`goodEvents`\" pulumi-lang-dotnet=\"`GoodEvents`\" pulumi-lang-go=\"`goodEvents`\" pulumi-lang-python=\"`good_events`\" pulumi-lang-yaml=\"`goodEvents`\" pulumi-lang-java=\"`goodEvents`\"\u003e`goodEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badEvents`\" pulumi-lang-dotnet=\"`BadEvents`\" pulumi-lang-go=\"`badEvents`\" pulumi-lang-python=\"`bad_events`\" pulumi-lang-yaml=\"`badEvents`\" pulumi-lang-java=\"`badEvents`\"\u003e`badEvents`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`goodMinutes`\" pulumi-lang-dotnet=\"`GoodMinutes`\" pulumi-lang-go=\"`goodMinutes`\" pulumi-lang-python=\"`good_minutes`\" pulumi-lang-yaml=\"`goodMinutes`\" pulumi-lang-java=\"`goodMinutes`\"\u003e`goodMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`badMinutes`\" pulumi-lang-dotnet=\"`BadMinutes`\" pulumi-lang-go=\"`badMinutes`\" pulumi-lang-python=\"`bad_minutes`\" pulumi-lang-yaml=\"`badMinutes`\" pulumi-lang-java=\"`badMinutes`\"\u003e`badMinutes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sloStatus`\" pulumi-lang-dotnet=\"`SloStatus`\" pulumi-lang-go=\"`sloStatus`\" pulumi-lang-python=\"`slo_status`\" pulumi-lang-yaml=\"`sloStatus`\" pulumi-lang-java=\"`sloStatus`\"\u003e`sloStatus`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetRemaining`\" pulumi-lang-dotnet=\"`ErrorBudgetRemaining`\" pulumi-lang-go=\"`errorBudgetRemaining`\" pulumi-lang-python=\"`error_budget_remaining`\" pulumi-lang-yaml=\"`errorBudgetRemaining`\" pulumi-lang-java=\"`errorBudgetRemaining`\"\u003e`errorBudgetRemaining`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`burnRate`\" pulumi-lang-dotnet=\"`BurnRate`\" pulumi-lang-go=\"`burnRate`\" pulumi-lang-python=\"`burn_rate`\" pulumi-lang-yaml=\"`burnRate`\" pulumi-lang-java=\"`burnRate`\"\u003e`burnRate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`errorBudgetBurndown`\" pulumi-lang-dotnet=\"`ErrorBudgetBurndown`\" pulumi-lang-go=\"`errorBudgetBurndown`\" pulumi-lang-python=\"`error_budget_burndown`\" pulumi-lang-yaml=\"`errorBudgetBurndown`\" pulumi-lang-java=\"`errorBudgetBurndown`\"\u003e`errorBudgetBurndown`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of query for use in formulas.\n"
                },
                "sloId": {
                    "type": "string",
                    "description": "ID of an SLO to query.\n"
                },
                "sloQueryType": {
                    "type": "string",
                    "description": "type of the SLO to query. Valid values are \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeSlice`\" pulumi-lang-dotnet=\"`TimeSlice`\" pulumi-lang-go=\"`timeSlice`\" pulumi-lang-python=\"`time_slice`\" pulumi-lang-yaml=\"`timeSlice`\" pulumi-lang-java=\"`timeSlice`\"\u003e`timeSlice`\u003c/span\u003e. Defaults to `\"metric\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "dataSource",
                "measure",
                "sloId"
            ]
        },
        "datadog:index/PowerpackWidgetWidgetLayout:PowerpackWidgetWidgetLayout": {
            "properties": {
                "height": {
                    "type": "integer",
                    "description": "The height of the widget.\n"
                },
                "isColumnBreak": {
                    "type": "boolean",
                    "description": "Whether the widget should be the first one on the second column in high density or not. Only one widget in the dashboard should have this property set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "width": {
                    "type": "integer",
                    "description": "The width of the widget.\n"
                },
                "x": {
                    "type": "integer",
                    "description": "The position of the widget on the x (horizontal) axis. Must be greater than or equal to 0.\n"
                },
                "y": {
                    "type": "integer",
                    "description": "The position of the widget on the y (vertical) axis. Must be greater than or equal to 0.\n"
                }
            },
            "type": "object",
            "required": [
                "height",
                "width",
                "x",
                "y"
            ]
        },
        "datadog:index/ProviderDefaultTags:ProviderDefaultTags": {
            "properties": {
                "tags": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "[Experimental - Logs Indexes, Logs Pipelines, Monitors Security Monitoring Rules, and Service Level Objectives only] Resource tags to be applied by default across all resources.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ReferenceTableFileMetadata:ReferenceTableFileMetadata": {
            "properties": {
                "accessDetails": {
                    "$ref": "#/types/datadog:index/ReferenceTableFileMetadataAccessDetails:ReferenceTableFileMetadataAccessDetails",
                    "description": "Cloud storage access configuration. Exactly one of aws*detail, gcp*detail, or azure*detail must be specified.\n"
                },
                "errorMessage": {
                    "type": "string",
                    "description": "Error message from the last sync attempt, if any.\n"
                },
                "errorRowCount": {
                    "type": "integer",
                    "description": "The number of rows that failed to sync.\n"
                },
                "errorType": {
                    "type": "string",
                    "description": "The type of error that occurred during file processing.\n"
                },
                "syncEnabled": {
                    "type": "boolean",
                    "description": "Whether this table should automatically sync with the cloud storage source.\n"
                }
            },
            "type": "object",
            "required": [
                "syncEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "errorMessage",
                        "errorRowCount",
                        "errorType",
                        "syncEnabled"
                    ]
                }
            }
        },
        "datadog:index/ReferenceTableFileMetadataAccessDetails:ReferenceTableFileMetadataAccessDetails": {
            "properties": {
                "awsDetail": {
                    "$ref": "#/types/datadog:index/ReferenceTableFileMetadataAccessDetailsAwsDetail:ReferenceTableFileMetadataAccessDetailsAwsDetail",
                    "description": "AWS S3 access configuration. Required when source is S3.\n"
                },
                "azureDetail": {
                    "$ref": "#/types/datadog:index/ReferenceTableFileMetadataAccessDetailsAzureDetail:ReferenceTableFileMetadataAccessDetailsAzureDetail",
                    "description": "Azure Blob Storage access configuration. Required when source is AZURE.\n"
                },
                "gcpDetail": {
                    "$ref": "#/types/datadog:index/ReferenceTableFileMetadataAccessDetailsGcpDetail:ReferenceTableFileMetadataAccessDetailsGcpDetail",
                    "description": "Google Cloud Storage access configuration. Required when source is GCS.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ReferenceTableFileMetadataAccessDetailsAwsDetail:ReferenceTableFileMetadataAccessDetailsAwsDetail": {
            "properties": {
                "awsAccountId": {
                    "type": "string",
                    "description": "The ID of the AWS account.\n"
                },
                "awsBucketName": {
                    "type": "string",
                    "description": "The name of the AWS S3 bucket.\n"
                },
                "filePath": {
                    "type": "string",
                    "description": "The relative file path from the AWS S3 bucket root to the CSV file.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ReferenceTableFileMetadataAccessDetailsAzureDetail:ReferenceTableFileMetadataAccessDetailsAzureDetail": {
            "properties": {
                "azureClientId": {
                    "type": "string",
                    "description": "The Azure client ID (application ID).\n"
                },
                "azureContainerName": {
                    "type": "string",
                    "description": "The name of the Azure container.\n"
                },
                "azureStorageAccountName": {
                    "type": "string",
                    "description": "The name of the Azure storage account.\n"
                },
                "azureTenantId": {
                    "type": "string",
                    "description": "The ID of the Azure tenant.\n"
                },
                "filePath": {
                    "type": "string",
                    "description": "The relative file path from the Azure container root to the CSV file.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ReferenceTableFileMetadataAccessDetailsGcpDetail:ReferenceTableFileMetadataAccessDetailsGcpDetail": {
            "properties": {
                "filePath": {
                    "type": "string",
                    "description": "The relative file path from the GCS bucket root to the CSV file.\n"
                },
                "gcpBucketName": {
                    "type": "string",
                    "description": "The name of the GCP bucket.\n"
                },
                "gcpProjectId": {
                    "type": "string",
                    "description": "The ID of the GCP project.\n"
                },
                "gcpServiceAccountEmail": {
                    "type": "string",
                    "description": "The email of the GCP service account used to access the bucket.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ReferenceTableSchema:ReferenceTableSchema": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ReferenceTableSchemaField:ReferenceTableSchemaField"
                    },
                    "description": "List of fields in the table schema. At least one field is required. Schema is only set on create.\n"
                },
                "primaryKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of field names that serve as primary keys for the table. Currently only one primary key is supported.\n"
                }
            },
            "type": "object",
            "required": [
                "primaryKeys"
            ]
        },
        "datadog:index/ReferenceTableSchemaField:ReferenceTableSchemaField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the field.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The data type of the field. Must be one of: STRING, INT32. Valid values are `STRING`, `INT32`.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ]
        },
        "datadog:index/RestrictionPolicyBinding:RestrictionPolicyBinding": {
            "properties": {
                "principals": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of principals. A principal is a subject or group of subjects. Each principal is formatted as `type:id`. Supported types: \u003cspan pulumi-lang-nodejs=\"`role`\" pulumi-lang-dotnet=\"`Role`\" pulumi-lang-go=\"`role`\" pulumi-lang-python=\"`role`\" pulumi-lang-yaml=\"`role`\" pulumi-lang-java=\"`role`\"\u003e`role`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`user`\" pulumi-lang-dotnet=\"`User`\" pulumi-lang-go=\"`user`\" pulumi-lang-python=\"`user`\" pulumi-lang-yaml=\"`user`\" pulumi-lang-java=\"`user`\"\u003e`user`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`org`\" pulumi-lang-dotnet=\"`Org`\" pulumi-lang-go=\"`org`\" pulumi-lang-python=\"`org`\" pulumi-lang-yaml=\"`org`\" pulumi-lang-java=\"`org`\"\u003e`org`\u003c/span\u003e. Org ID can be obtained using a `GET /api/v2/current_user` API request. Find it in the `data.relationships.org.data.id` field.\n"
                },
                "relation": {
                    "type": "string",
                    "description": "The role/level of access. See this page for more details https://docs.datadoghq.com/api/latest/restriction-policies/#supported-relations-for-resources\n"
                }
            },
            "type": "object",
            "required": [
                "principals",
                "relation"
            ]
        },
        "datadog:index/RolePermission:RolePermission": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the permission to assign.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the permission.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "datadog:index/RumMetricCompute:RumMetricCompute": {
            "properties": {
                "aggregationType": {
                    "type": "string",
                    "description": "The type of aggregation to use.\n"
                },
                "includePercentiles": {
                    "type": "boolean",
                    "description": "Toggle to include or exclude percentile aggregations for distribution metrics. Only present when \u003cspan pulumi-lang-nodejs=\"`aggregationType`\" pulumi-lang-dotnet=\"`AggregationType`\" pulumi-lang-go=\"`aggregationType`\" pulumi-lang-python=\"`aggregation_type`\" pulumi-lang-yaml=\"`aggregationType`\" pulumi-lang-java=\"`aggregationType`\"\u003e`aggregationType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e.\n"
                },
                "path": {
                    "type": "string",
                    "description": "The path to the value the RUM-based metric will aggregate on. Only present when \u003cspan pulumi-lang-nodejs=\"`aggregationType`\" pulumi-lang-dotnet=\"`AggregationType`\" pulumi-lang-go=\"`aggregationType`\" pulumi-lang-python=\"`aggregation_type`\" pulumi-lang-yaml=\"`aggregationType`\" pulumi-lang-java=\"`aggregationType`\"\u003e`aggregationType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregationType"
            ]
        },
        "datadog:index/RumMetricFilter:RumMetricFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The search query. Follows RUM search syntax.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/RumMetricGroupBy:RumMetricGroupBy": {
            "properties": {
                "path": {
                    "type": "string",
                    "description": "The path to the value the RUM-based metric will be aggregated over.\n"
                },
                "tagName": {
                    "type": "string",
                    "description": "Name of the tag that gets created. By default, \u003cspan pulumi-lang-nodejs=\"`path`\" pulumi-lang-dotnet=\"`Path`\" pulumi-lang-go=\"`path`\" pulumi-lang-python=\"`path`\" pulumi-lang-yaml=\"`path`\" pulumi-lang-java=\"`path`\"\u003e`path`\u003c/span\u003e is used as the tag name.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/RumMetricUniqueness:RumMetricUniqueness": {
            "properties": {
                "when": {
                    "type": "string",
                    "description": "When to count updatable events. \u003cspan pulumi-lang-nodejs=\"`match`\" pulumi-lang-dotnet=\"`Match`\" pulumi-lang-go=\"`match`\" pulumi-lang-python=\"`match`\" pulumi-lang-yaml=\"`match`\" pulumi-lang-java=\"`match`\"\u003e`match`\u003c/span\u003e when the event is first seen, or \u003cspan pulumi-lang-nodejs=\"`end`\" pulumi-lang-dotnet=\"`End`\" pulumi-lang-go=\"`end`\" pulumi-lang-python=\"`end`\" pulumi-lang-yaml=\"`end`\" pulumi-lang-java=\"`end`\"\u003e`end`\u003c/span\u003e when the event is complete.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SecureEmbedDashboardSelectableTemplateVar:SecureEmbedDashboardSelectableTemplateVar": {
            "properties": {
                "defaultValues": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The default values for this template variable.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the template variable.\n"
                },
                "prefix": {
                    "type": "string",
                    "description": "The tag prefix for this template variable. Defaults to `\"\"`.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of the template variable. Defaults to `\"\"`.\n"
                },
                "visibleTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The visible tag values for this template variable.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "defaultValues",
                        "name",
                        "prefix",
                        "type",
                        "visibleTags"
                    ]
                }
            }
        },
        "datadog:index/SecurityMonitoringDefaultRuleCase:SecurityMonitoringDefaultRuleCase": {
            "properties": {
                "customStatus": {
                    "type": "string",
                    "description": "Status of the rule case to override. Valid values are \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                },
                "notifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Notification targets for each rule case.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the rule case to match. Valid values are \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "status"
            ]
        },
        "datadog:index/SecurityMonitoringDefaultRuleFilter:SecurityMonitoringDefaultRuleFilter": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The type of filtering action. Allowed enum values: require, suppress Valid values are \u003cspan pulumi-lang-nodejs=\"`require`\" pulumi-lang-dotnet=\"`Require`\" pulumi-lang-go=\"`require`\" pulumi-lang-python=\"`require`\" pulumi-lang-yaml=\"`require`\" pulumi-lang-java=\"`require`\"\u003e`require`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`suppress`\" pulumi-lang-dotnet=\"`Suppress`\" pulumi-lang-go=\"`suppress`\" pulumi-lang-python=\"`suppress`\" pulumi-lang-yaml=\"`suppress`\" pulumi-lang-java=\"`suppress`\"\u003e`suppress`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query for selecting logs to apply the filtering action.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "query"
            ]
        },
        "datadog:index/SecurityMonitoringDefaultRuleOptions:SecurityMonitoringDefaultRuleOptions": {
            "properties": {
                "decreaseCriticalityBasedOnEnv": {
                    "type": "boolean",
                    "description": "If true, signals in non-production environments have a lower severity than what is defined by the rule case, which can reduce noise. The decrement is applied when the environment tag of the signal starts with \u003cspan pulumi-lang-nodejs=\"`staging`\" pulumi-lang-dotnet=\"`Staging`\" pulumi-lang-go=\"`staging`\" pulumi-lang-python=\"`staging`\" pulumi-lang-yaml=\"`staging`\" pulumi-lang-java=\"`staging`\"\u003e`staging`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`test`\" pulumi-lang-dotnet=\"`Test`\" pulumi-lang-go=\"`test`\" pulumi-lang-python=\"`test`\" pulumi-lang-yaml=\"`test`\" pulumi-lang-java=\"`test`\"\u003e`test`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`dev`\" pulumi-lang-dotnet=\"`Dev`\" pulumi-lang-go=\"`dev`\" pulumi-lang-python=\"`dev`\" pulumi-lang-yaml=\"`dev`\" pulumi-lang-java=\"`dev`\"\u003e`dev`\u003c/span\u003e. Only available when the rule type is \u003cspan pulumi-lang-nodejs=\"`logDetection`\" pulumi-lang-dotnet=\"`LogDetection`\" pulumi-lang-go=\"`logDetection`\" pulumi-lang-python=\"`log_detection`\" pulumi-lang-yaml=\"`logDetection`\" pulumi-lang-java=\"`logDetection`\"\u003e`logDetection`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "decreaseCriticalityBasedOnEnv"
                    ]
                }
            }
        },
        "datadog:index/SecurityMonitoringDefaultRuleQuery:SecurityMonitoringDefaultRuleQuery": {
            "properties": {
                "agentRules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleQueryAgentRule:SecurityMonitoringDefaultRuleQueryAgentRule"
                    },
                    "description": "**Deprecated**. It won't be applied anymore. **Deprecated.** \u003cspan pulumi-lang-nodejs=\"`agentRule`\" pulumi-lang-dotnet=\"`AgentRule`\" pulumi-lang-go=\"`agentRule`\" pulumi-lang-python=\"`agent_rule`\" pulumi-lang-yaml=\"`agentRule`\" pulumi-lang-java=\"`agentRule`\"\u003e`agentRule`\u003c/span\u003e has been deprecated in favor of new Agent Rule resource.\n",
                    "deprecationMessage": "\u003cspan pulumi-lang-nodejs=\"`agentRule`\" pulumi-lang-dotnet=\"`AgentRule`\" pulumi-lang-go=\"`agentRule`\" pulumi-lang-python=\"`agent_rule`\" pulumi-lang-yaml=\"`agentRule`\" pulumi-lang-java=\"`agentRule`\"\u003e`agentRule`\u003c/span\u003e has been deprecated in favor of new Agent Rule resource."
                },
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation type. For Signal Correlation rules, it must be event_count. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventCount`\" pulumi-lang-dotnet=\"`EventCount`\" pulumi-lang-go=\"`eventCount`\" pulumi-lang-python=\"`event_count`\" pulumi-lang-yaml=\"`eventCount`\" pulumi-lang-java=\"`eventCount`\"\u003e`eventCount`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e.\n"
                },
                "customQueryExtension": {
                    "type": "string",
                    "description": "Query extension to append to the logs query.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "Source of events. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`appSecSpans`\" pulumi-lang-dotnet=\"`AppSecSpans`\" pulumi-lang-go=\"`appSecSpans`\" pulumi-lang-python=\"`app_sec_spans`\" pulumi-lang-yaml=\"`appSecSpans`\" pulumi-lang-java=\"`appSecSpans`\"\u003e`appSecSpans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityRuntime`\" pulumi-lang-dotnet=\"`SecurityRuntime`\" pulumi-lang-go=\"`securityRuntime`\" pulumi-lang-python=\"`security_runtime`\" pulumi-lang-yaml=\"`securityRuntime`\" pulumi-lang-java=\"`securityRuntime`\"\u003e`securityRuntime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e.\n"
                },
                "distinctFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Field for which the cardinality is measured. Sent as an array.\n"
                },
                "groupByFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Fields to group by.\n"
                },
                "hasOptionalGroupByFields": {
                    "type": "boolean",
                    "description": "When false, events without a group-by value are ignored by the rule. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The target field to aggregate over when using the \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e aggregations. **Deprecated.** Configure \u003cspan pulumi-lang-nodejs=\"`metrics`\" pulumi-lang-dotnet=\"`Metrics`\" pulumi-lang-go=\"`metrics`\" pulumi-lang-python=\"`metrics`\" pulumi-lang-yaml=\"`metrics`\" pulumi-lang-java=\"`metrics`\"\u003e`metrics`\u003c/span\u003e instead. This attribute will be removed in the next major version of the provider.\n",
                    "deprecationMessage": "Configure \u003cspan pulumi-lang-nodejs=\"`metrics`\" pulumi-lang-dotnet=\"`Metrics`\" pulumi-lang-go=\"`metrics`\" pulumi-lang-python=\"`metrics`\" pulumi-lang-yaml=\"`metrics`\" pulumi-lang-java=\"`metrics`\"\u003e`metrics`\u003c/span\u003e instead. This attribute will be removed in the next major version of the provider."
                },
                "metrics": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Group of target fields to aggregate over when using the \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregations. The \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e aggregations only accept one value in this list, whereas the \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregation accepts up to five values.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the query. Not compatible with \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregations.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query to run on logs.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aggregation",
                        "customQueryExtension",
                        "dataSource",
                        "distinctFields",
                        "groupByFields",
                        "hasOptionalGroupByFields",
                        "metric",
                        "metrics",
                        "name",
                        "query"
                    ]
                }
            }
        },
        "datadog:index/SecurityMonitoringDefaultRuleQueryAgentRule:SecurityMonitoringDefaultRuleQueryAgentRule": {
            "properties": {
                "agentRuleId": {
                    "type": "string",
                    "description": "**Deprecated**. It won't be applied anymore.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "**Deprecated**. It won't be applied anymore.\n"
                }
            },
            "type": "object",
            "required": [
                "agentRuleId",
                "expression"
            ]
        },
        "datadog:index/SecurityMonitoringFilterExclusionFilter:SecurityMonitoringFilterExclusionFilter": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Exclusion filter name.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Exclusion filter query. Logs that match this query are excluded from the security filter.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/SecurityMonitoringRuleCalculatedField:SecurityMonitoringRuleCalculatedField": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "Expression.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Field name.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "name"
            ]
        },
        "datadog:index/SecurityMonitoringRuleCase:SecurityMonitoringRuleCase": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleCaseAction:SecurityMonitoringRuleCaseAction"
                    },
                    "description": "Action to perform when the case trigger\n"
                },
                "condition": {
                    "type": "string",
                    "description": "A rule case contains logical operations (`\u003e`,`\u003e=`, `\u0026\u0026`, `||`) to determine if a signal should be generated based on the event counts in the previously defined queries.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the case.\n"
                },
                "notifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Notification targets for each rule case.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Severity of the Security Signal. Valid values are \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "status"
            ]
        },
        "datadog:index/SecurityMonitoringRuleCaseAction:SecurityMonitoringRuleCaseAction": {
            "properties": {
                "options": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleCaseActionOptions:SecurityMonitoringRuleCaseActionOptions",
                    "description": "Options for the action.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of action to perform when the case triggers. Valid values are \u003cspan pulumi-lang-nodejs=\"`blockIp`\" pulumi-lang-dotnet=\"`BlockIp`\" pulumi-lang-go=\"`blockIp`\" pulumi-lang-python=\"`block_ip`\" pulumi-lang-yaml=\"`blockIp`\" pulumi-lang-java=\"`blockIp`\"\u003e`blockIp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`blockUser`\" pulumi-lang-dotnet=\"`BlockUser`\" pulumi-lang-go=\"`blockUser`\" pulumi-lang-python=\"`block_user`\" pulumi-lang-yaml=\"`blockUser`\" pulumi-lang-java=\"`blockUser`\"\u003e`blockUser`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`userBehavior`\" pulumi-lang-dotnet=\"`UserBehavior`\" pulumi-lang-go=\"`userBehavior`\" pulumi-lang-python=\"`user_behavior`\" pulumi-lang-yaml=\"`userBehavior`\" pulumi-lang-java=\"`userBehavior`\"\u003e`userBehavior`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`flagIp`\" pulumi-lang-dotnet=\"`FlagIp`\" pulumi-lang-go=\"`flagIp`\" pulumi-lang-python=\"`flag_ip`\" pulumi-lang-yaml=\"`flagIp`\" pulumi-lang-java=\"`flagIp`\"\u003e`flagIp`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/SecurityMonitoringRuleCaseActionOptions:SecurityMonitoringRuleCaseActionOptions": {
            "properties": {
                "duration": {
                    "type": "integer",
                    "description": "Duration of the action in seconds.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SecurityMonitoringRuleFilter:SecurityMonitoringRuleFilter": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The type of filtering action. Valid values are \u003cspan pulumi-lang-nodejs=\"`require`\" pulumi-lang-dotnet=\"`Require`\" pulumi-lang-go=\"`require`\" pulumi-lang-python=\"`require`\" pulumi-lang-yaml=\"`require`\" pulumi-lang-java=\"`require`\"\u003e`require`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`suppress`\" pulumi-lang-dotnet=\"`Suppress`\" pulumi-lang-go=\"`suppress`\" pulumi-lang-python=\"`suppress`\" pulumi-lang-yaml=\"`suppress`\" pulumi-lang-java=\"`suppress`\"\u003e`suppress`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query for selecting logs to apply the filtering action.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "query"
            ]
        },
        "datadog:index/SecurityMonitoringRuleOptions:SecurityMonitoringRuleOptions": {
            "properties": {
                "anomalyDetectionOptions": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptionsAnomalyDetectionOptions:SecurityMonitoringRuleOptionsAnomalyDetectionOptions",
                    "description": "Options for rules using the anomaly detection method.\n"
                },
                "decreaseCriticalityBasedOnEnv": {
                    "type": "boolean",
                    "description": "If true, signals in non-production environments have a lower severity than what is defined by the rule case, which can reduce noise. The decrement is applied when the environment tag of the signal starts with \u003cspan pulumi-lang-nodejs=\"`staging`\" pulumi-lang-dotnet=\"`Staging`\" pulumi-lang-go=\"`staging`\" pulumi-lang-python=\"`staging`\" pulumi-lang-yaml=\"`staging`\" pulumi-lang-java=\"`staging`\"\u003e`staging`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`test`\" pulumi-lang-dotnet=\"`Test`\" pulumi-lang-go=\"`test`\" pulumi-lang-python=\"`test`\" pulumi-lang-yaml=\"`test`\" pulumi-lang-java=\"`test`\"\u003e`test`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`dev`\" pulumi-lang-dotnet=\"`Dev`\" pulumi-lang-go=\"`dev`\" pulumi-lang-python=\"`dev`\" pulumi-lang-yaml=\"`dev`\" pulumi-lang-java=\"`dev`\"\u003e`dev`\u003c/span\u003e. Only available when the rule type is \u003cspan pulumi-lang-nodejs=\"`logDetection`\" pulumi-lang-dotnet=\"`LogDetection`\" pulumi-lang-go=\"`logDetection`\" pulumi-lang-python=\"`log_detection`\" pulumi-lang-yaml=\"`logDetection`\" pulumi-lang-java=\"`logDetection`\"\u003e`logDetection`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "detectionMethod": {
                    "type": "string",
                    "description": "The detection method. Valid values are \u003cspan pulumi-lang-nodejs=\"`threshold`\" pulumi-lang-dotnet=\"`Threshold`\" pulumi-lang-go=\"`threshold`\" pulumi-lang-python=\"`threshold`\" pulumi-lang-yaml=\"`threshold`\" pulumi-lang-java=\"`threshold`\"\u003e`threshold`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`anomalyDetection`\" pulumi-lang-dotnet=\"`AnomalyDetection`\" pulumi-lang-go=\"`anomalyDetection`\" pulumi-lang-python=\"`anomaly_detection`\" pulumi-lang-yaml=\"`anomalyDetection`\" pulumi-lang-java=\"`anomalyDetection`\"\u003e`anomalyDetection`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`impossibleTravel`\" pulumi-lang-dotnet=\"`ImpossibleTravel`\" pulumi-lang-go=\"`impossibleTravel`\" pulumi-lang-python=\"`impossible_travel`\" pulumi-lang-yaml=\"`impossibleTravel`\" pulumi-lang-java=\"`impossibleTravel`\"\u003e`impossibleTravel`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hardcoded`\" pulumi-lang-dotnet=\"`Hardcoded`\" pulumi-lang-go=\"`hardcoded`\" pulumi-lang-python=\"`hardcoded`\" pulumi-lang-yaml=\"`hardcoded`\" pulumi-lang-java=\"`hardcoded`\"\u003e`hardcoded`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`thirdParty`\" pulumi-lang-dotnet=\"`ThirdParty`\" pulumi-lang-go=\"`thirdParty`\" pulumi-lang-python=\"`third_party`\" pulumi-lang-yaml=\"`thirdParty`\" pulumi-lang-java=\"`thirdParty`\"\u003e`thirdParty`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`anomalyThreshold`\" pulumi-lang-dotnet=\"`AnomalyThreshold`\" pulumi-lang-go=\"`anomalyThreshold`\" pulumi-lang-python=\"`anomaly_threshold`\" pulumi-lang-yaml=\"`anomalyThreshold`\" pulumi-lang-java=\"`anomalyThreshold`\"\u003e`anomalyThreshold`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sequenceDetection`\" pulumi-lang-dotnet=\"`SequenceDetection`\" pulumi-lang-go=\"`sequenceDetection`\" pulumi-lang-python=\"`sequence_detection`\" pulumi-lang-yaml=\"`sequenceDetection`\" pulumi-lang-java=\"`sequenceDetection`\"\u003e`sequenceDetection`\u003c/span\u003e. Defaults to `\"threshold\"`.\n",
                    "willReplaceOnChanges": true
                },
                "evaluationWindow": {
                    "type": "integer",
                    "description": "A time window is specified to match when at least one of the cases matches true. This is a sliding window and evaluates in real time. Valid values are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`60`\" pulumi-lang-dotnet=\"`60`\" pulumi-lang-go=\"`60`\" pulumi-lang-python=\"`60`\" pulumi-lang-yaml=\"`60`\" pulumi-lang-java=\"`60`\"\u003e`60`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`600`\" pulumi-lang-dotnet=\"`600`\" pulumi-lang-go=\"`600`\" pulumi-lang-python=\"`600`\" pulumi-lang-yaml=\"`600`\" pulumi-lang-java=\"`600`\"\u003e`600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`900`\" pulumi-lang-dotnet=\"`900`\" pulumi-lang-go=\"`900`\" pulumi-lang-python=\"`900`\" pulumi-lang-yaml=\"`900`\" pulumi-lang-java=\"`900`\"\u003e`900`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1800`\" pulumi-lang-dotnet=\"`1800`\" pulumi-lang-go=\"`1800`\" pulumi-lang-python=\"`1800`\" pulumi-lang-yaml=\"`1800`\" pulumi-lang-java=\"`1800`\"\u003e`1800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3600`\" pulumi-lang-dotnet=\"`3600`\" pulumi-lang-go=\"`3600`\" pulumi-lang-python=\"`3600`\" pulumi-lang-yaml=\"`3600`\" pulumi-lang-java=\"`3600`\"\u003e`3600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`7200`\" pulumi-lang-dotnet=\"`7200`\" pulumi-lang-go=\"`7200`\" pulumi-lang-python=\"`7200`\" pulumi-lang-yaml=\"`7200`\" pulumi-lang-java=\"`7200`\"\u003e`7200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10800`\" pulumi-lang-dotnet=\"`10800`\" pulumi-lang-go=\"`10800`\" pulumi-lang-python=\"`10800`\" pulumi-lang-yaml=\"`10800`\" pulumi-lang-java=\"`10800`\"\u003e`10800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`21600`\" pulumi-lang-dotnet=\"`21600`\" pulumi-lang-go=\"`21600`\" pulumi-lang-python=\"`21600`\" pulumi-lang-yaml=\"`21600`\" pulumi-lang-java=\"`21600`\"\u003e`21600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`43200`\" pulumi-lang-dotnet=\"`43200`\" pulumi-lang-go=\"`43200`\" pulumi-lang-python=\"`43200`\" pulumi-lang-yaml=\"`43200`\" pulumi-lang-java=\"`43200`\"\u003e`43200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`86400`\" pulumi-lang-dotnet=\"`86400`\" pulumi-lang-go=\"`86400`\" pulumi-lang-python=\"`86400`\" pulumi-lang-yaml=\"`86400`\" pulumi-lang-java=\"`86400`\"\u003e`86400`\u003c/span\u003e.\n"
                },
                "impossibleTravelOptions": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptionsImpossibleTravelOptions:SecurityMonitoringRuleOptionsImpossibleTravelOptions",
                    "description": "Options for rules using the impossible travel detection method.\n"
                },
                "keepAlive": {
                    "type": "integer",
                    "description": "Once a signal is generated, the signal will remain “open” if a case is matched at least once within this keep alive window (in seconds). Valid values are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`60`\" pulumi-lang-dotnet=\"`60`\" pulumi-lang-go=\"`60`\" pulumi-lang-python=\"`60`\" pulumi-lang-yaml=\"`60`\" pulumi-lang-java=\"`60`\"\u003e`60`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`600`\" pulumi-lang-dotnet=\"`600`\" pulumi-lang-go=\"`600`\" pulumi-lang-python=\"`600`\" pulumi-lang-yaml=\"`600`\" pulumi-lang-java=\"`600`\"\u003e`600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`900`\" pulumi-lang-dotnet=\"`900`\" pulumi-lang-go=\"`900`\" pulumi-lang-python=\"`900`\" pulumi-lang-yaml=\"`900`\" pulumi-lang-java=\"`900`\"\u003e`900`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1800`\" pulumi-lang-dotnet=\"`1800`\" pulumi-lang-go=\"`1800`\" pulumi-lang-python=\"`1800`\" pulumi-lang-yaml=\"`1800`\" pulumi-lang-java=\"`1800`\"\u003e`1800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3600`\" pulumi-lang-dotnet=\"`3600`\" pulumi-lang-go=\"`3600`\" pulumi-lang-python=\"`3600`\" pulumi-lang-yaml=\"`3600`\" pulumi-lang-java=\"`3600`\"\u003e`3600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`7200`\" pulumi-lang-dotnet=\"`7200`\" pulumi-lang-go=\"`7200`\" pulumi-lang-python=\"`7200`\" pulumi-lang-yaml=\"`7200`\" pulumi-lang-java=\"`7200`\"\u003e`7200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10800`\" pulumi-lang-dotnet=\"`10800`\" pulumi-lang-go=\"`10800`\" pulumi-lang-python=\"`10800`\" pulumi-lang-yaml=\"`10800`\" pulumi-lang-java=\"`10800`\"\u003e`10800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`21600`\" pulumi-lang-dotnet=\"`21600`\" pulumi-lang-go=\"`21600`\" pulumi-lang-python=\"`21600`\" pulumi-lang-yaml=\"`21600`\" pulumi-lang-java=\"`21600`\"\u003e`21600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`43200`\" pulumi-lang-dotnet=\"`43200`\" pulumi-lang-go=\"`43200`\" pulumi-lang-python=\"`43200`\" pulumi-lang-yaml=\"`43200`\" pulumi-lang-java=\"`43200`\"\u003e`43200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`86400`\" pulumi-lang-dotnet=\"`86400`\" pulumi-lang-go=\"`86400`\" pulumi-lang-python=\"`86400`\" pulumi-lang-yaml=\"`86400`\" pulumi-lang-java=\"`86400`\"\u003e`86400`\u003c/span\u003e.\n"
                },
                "maxSignalDuration": {
                    "type": "integer",
                    "description": "A signal will “close” regardless of the query being matched once the time exceeds the maximum duration (in seconds). This time is calculated from the first seen timestamp. Valid values are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`60`\" pulumi-lang-dotnet=\"`60`\" pulumi-lang-go=\"`60`\" pulumi-lang-python=\"`60`\" pulumi-lang-yaml=\"`60`\" pulumi-lang-java=\"`60`\"\u003e`60`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`600`\" pulumi-lang-dotnet=\"`600`\" pulumi-lang-go=\"`600`\" pulumi-lang-python=\"`600`\" pulumi-lang-yaml=\"`600`\" pulumi-lang-java=\"`600`\"\u003e`600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`900`\" pulumi-lang-dotnet=\"`900`\" pulumi-lang-go=\"`900`\" pulumi-lang-python=\"`900`\" pulumi-lang-yaml=\"`900`\" pulumi-lang-java=\"`900`\"\u003e`900`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1800`\" pulumi-lang-dotnet=\"`1800`\" pulumi-lang-go=\"`1800`\" pulumi-lang-python=\"`1800`\" pulumi-lang-yaml=\"`1800`\" pulumi-lang-java=\"`1800`\"\u003e`1800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3600`\" pulumi-lang-dotnet=\"`3600`\" pulumi-lang-go=\"`3600`\" pulumi-lang-python=\"`3600`\" pulumi-lang-yaml=\"`3600`\" pulumi-lang-java=\"`3600`\"\u003e`3600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`7200`\" pulumi-lang-dotnet=\"`7200`\" pulumi-lang-go=\"`7200`\" pulumi-lang-python=\"`7200`\" pulumi-lang-yaml=\"`7200`\" pulumi-lang-java=\"`7200`\"\u003e`7200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10800`\" pulumi-lang-dotnet=\"`10800`\" pulumi-lang-go=\"`10800`\" pulumi-lang-python=\"`10800`\" pulumi-lang-yaml=\"`10800`\" pulumi-lang-java=\"`10800`\"\u003e`10800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`21600`\" pulumi-lang-dotnet=\"`21600`\" pulumi-lang-go=\"`21600`\" pulumi-lang-python=\"`21600`\" pulumi-lang-yaml=\"`21600`\" pulumi-lang-java=\"`21600`\"\u003e`21600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`43200`\" pulumi-lang-dotnet=\"`43200`\" pulumi-lang-go=\"`43200`\" pulumi-lang-python=\"`43200`\" pulumi-lang-yaml=\"`43200`\" pulumi-lang-java=\"`43200`\"\u003e`43200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`86400`\" pulumi-lang-dotnet=\"`86400`\" pulumi-lang-go=\"`86400`\" pulumi-lang-python=\"`86400`\" pulumi-lang-yaml=\"`86400`\" pulumi-lang-java=\"`86400`\"\u003e`86400`\u003c/span\u003e.\n"
                },
                "newValueOptions": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptionsNewValueOptions:SecurityMonitoringRuleOptionsNewValueOptions",
                    "description": "New value rules specific options.\n"
                },
                "sequenceDetectionOptions": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptionsSequenceDetectionOptions:SecurityMonitoringRuleOptionsSequenceDetectionOptions",
                    "description": "Options for rules using the sequence detection method.\n"
                },
                "thirdPartyRuleOptions": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptionsThirdPartyRuleOptions:SecurityMonitoringRuleOptionsThirdPartyRuleOptions",
                    "description": "Options for rules using the third-party detection method.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SecurityMonitoringRuleOptionsAnomalyDetectionOptions:SecurityMonitoringRuleOptionsAnomalyDetectionOptions": {
            "properties": {
                "bucketDuration": {
                    "type": "integer",
                    "description": "Duration in seconds of the time buckets used to aggregate events matched by the rule. Valid values are 300, 600, 900, 1800, 3600, 10800. Valid values are \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`600`\" pulumi-lang-dotnet=\"`600`\" pulumi-lang-go=\"`600`\" pulumi-lang-python=\"`600`\" pulumi-lang-yaml=\"`600`\" pulumi-lang-java=\"`600`\"\u003e`600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`900`\" pulumi-lang-dotnet=\"`900`\" pulumi-lang-go=\"`900`\" pulumi-lang-python=\"`900`\" pulumi-lang-yaml=\"`900`\" pulumi-lang-java=\"`900`\"\u003e`900`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1800`\" pulumi-lang-dotnet=\"`1800`\" pulumi-lang-go=\"`1800`\" pulumi-lang-python=\"`1800`\" pulumi-lang-yaml=\"`1800`\" pulumi-lang-java=\"`1800`\"\u003e`1800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3600`\" pulumi-lang-dotnet=\"`3600`\" pulumi-lang-go=\"`3600`\" pulumi-lang-python=\"`3600`\" pulumi-lang-yaml=\"`3600`\" pulumi-lang-java=\"`3600`\"\u003e`3600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10800`\" pulumi-lang-dotnet=\"`10800`\" pulumi-lang-go=\"`10800`\" pulumi-lang-python=\"`10800`\" pulumi-lang-yaml=\"`10800`\" pulumi-lang-java=\"`10800`\"\u003e`10800`\u003c/span\u003e.\n"
                },
                "detectionTolerance": {
                    "type": "integer",
                    "description": "An optional parameter that sets how permissive anomaly detection is. Higher values require higher deviations before triggering a signal. Valid values are 1, 2, 3, 4, 5. Valid values are \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4`\" pulumi-lang-dotnet=\"`4`\" pulumi-lang-go=\"`4`\" pulumi-lang-python=\"`4`\" pulumi-lang-yaml=\"`4`\" pulumi-lang-java=\"`4`\"\u003e`4`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5`\" pulumi-lang-dotnet=\"`5`\" pulumi-lang-go=\"`5`\" pulumi-lang-python=\"`5`\" pulumi-lang-yaml=\"`5`\" pulumi-lang-java=\"`5`\"\u003e`5`\u003c/span\u003e.\n"
                },
                "instantaneousBaseline": {
                    "type": "boolean",
                    "description": "When set to true, Datadog uses previous values that fall within the defined learning window to construct the baseline, enabling the system to establish an accurate baseline more rapidly rather than relying solely on gradual learning over time. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "learningDuration": {
                    "type": "integer",
                    "description": "Learning duration in hours. Anomaly detection waits for at least this amount of historical data before it starts evaluating. Valid values are 1, 6, 12, 24, 48, 168, 336. Valid values are \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6`\" pulumi-lang-dotnet=\"`6`\" pulumi-lang-go=\"`6`\" pulumi-lang-python=\"`6`\" pulumi-lang-yaml=\"`6`\" pulumi-lang-java=\"`6`\"\u003e`6`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`12`\" pulumi-lang-dotnet=\"`12`\" pulumi-lang-go=\"`12`\" pulumi-lang-python=\"`12`\" pulumi-lang-yaml=\"`12`\" pulumi-lang-java=\"`12`\"\u003e`12`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`24`\" pulumi-lang-dotnet=\"`24`\" pulumi-lang-go=\"`24`\" pulumi-lang-python=\"`24`\" pulumi-lang-yaml=\"`24`\" pulumi-lang-java=\"`24`\"\u003e`24`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`48`\" pulumi-lang-dotnet=\"`48`\" pulumi-lang-go=\"`48`\" pulumi-lang-python=\"`48`\" pulumi-lang-yaml=\"`48`\" pulumi-lang-java=\"`48`\"\u003e`48`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`168`\" pulumi-lang-dotnet=\"`168`\" pulumi-lang-go=\"`168`\" pulumi-lang-python=\"`168`\" pulumi-lang-yaml=\"`168`\" pulumi-lang-java=\"`168`\"\u003e`168`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`336`\" pulumi-lang-dotnet=\"`336`\" pulumi-lang-go=\"`336`\" pulumi-lang-python=\"`336`\" pulumi-lang-yaml=\"`336`\" pulumi-lang-java=\"`336`\"\u003e`336`\u003c/span\u003e.\n"
                },
                "learningPeriodBaseline": {
                    "type": "integer",
                    "description": "An optional override baseline to apply while the rule is in the learning period. Must be greater than or equal to 0.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SecurityMonitoringRuleOptionsImpossibleTravelOptions:SecurityMonitoringRuleOptionsImpossibleTravelOptions": {
            "properties": {
                "baselineUserLocations": {
                    "type": "boolean",
                    "description": "If true, signals are suppressed for the first 24 hours. During that time, Datadog learns the user's regular access locations. This can be helpful to reduce noise and infer VPN usage or credentialed API access. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SecurityMonitoringRuleOptionsNewValueOptions:SecurityMonitoringRuleOptionsNewValueOptions": {
            "properties": {
                "forgetAfter": {
                    "type": "integer",
                    "description": "The duration in days after which a learned value is forgotten. Valid values are \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`7`\" pulumi-lang-dotnet=\"`7`\" pulumi-lang-go=\"`7`\" pulumi-lang-python=\"`7`\" pulumi-lang-yaml=\"`7`\" pulumi-lang-java=\"`7`\"\u003e`7`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`14`\" pulumi-lang-dotnet=\"`14`\" pulumi-lang-go=\"`14`\" pulumi-lang-python=\"`14`\" pulumi-lang-yaml=\"`14`\" pulumi-lang-java=\"`14`\"\u003e`14`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`21`\" pulumi-lang-dotnet=\"`21`\" pulumi-lang-go=\"`21`\" pulumi-lang-python=\"`21`\" pulumi-lang-yaml=\"`21`\" pulumi-lang-java=\"`21`\"\u003e`21`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`28`\" pulumi-lang-dotnet=\"`28`\" pulumi-lang-go=\"`28`\" pulumi-lang-python=\"`28`\" pulumi-lang-yaml=\"`28`\" pulumi-lang-java=\"`28`\"\u003e`28`\u003c/span\u003e.\n"
                },
                "instantaneousBaseline": {
                    "type": "boolean",
                    "description": "When set to true, Datadog uses previous values that fall within the defined learning window to construct the baseline, enabling the system to establish an accurate baseline more rapidly rather than relying solely on gradual learning over time. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "learningDuration": {
                    "type": "integer",
                    "description": "The duration in days during which values are learned, and after which signals will be generated for values that weren't learned. If set to 0, a signal will be generated for all new values after the first value is learned. Valid values are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`7`\" pulumi-lang-dotnet=\"`7`\" pulumi-lang-go=\"`7`\" pulumi-lang-python=\"`7`\" pulumi-lang-yaml=\"`7`\" pulumi-lang-java=\"`7`\"\u003e`7`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e.\n"
                },
                "learningMethod": {
                    "type": "string",
                    "description": "The learning method used to determine when signals should be generated for values that weren't learned. Valid values are \u003cspan pulumi-lang-nodejs=\"`duration`\" pulumi-lang-dotnet=\"`Duration`\" pulumi-lang-go=\"`duration`\" pulumi-lang-python=\"`duration`\" pulumi-lang-yaml=\"`duration`\" pulumi-lang-java=\"`duration`\"\u003e`duration`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`threshold`\" pulumi-lang-dotnet=\"`Threshold`\" pulumi-lang-go=\"`threshold`\" pulumi-lang-python=\"`threshold`\" pulumi-lang-yaml=\"`threshold`\" pulumi-lang-java=\"`threshold`\"\u003e`threshold`\u003c/span\u003e. Defaults to `\"duration\"`.\n"
                },
                "learningThreshold": {
                    "type": "integer",
                    "description": "A number of occurrences after which signals are generated for values that weren't learned. Valid values are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "forgetAfter"
            ]
        },
        "datadog:index/SecurityMonitoringRuleOptionsSequenceDetectionOptions:SecurityMonitoringRuleOptionsSequenceDetectionOptions": {
            "properties": {
                "stepTransitions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptionsSequenceDetectionOptionsStepTransition:SecurityMonitoringRuleOptionsSequenceDetectionOptionsStepTransition"
                    },
                    "description": "Edges of the step graph.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptionsSequenceDetectionOptionsStep:SecurityMonitoringRuleOptionsSequenceDetectionOptionsStep"
                    },
                    "description": "Sequence steps.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SecurityMonitoringRuleOptionsSequenceDetectionOptionsStep:SecurityMonitoringRuleOptionsSequenceDetectionOptionsStep": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "Condition for the step to match.\n"
                },
                "evaluationWindow": {
                    "type": "integer",
                    "description": "Evaluation window for the step. Valid values are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`60`\" pulumi-lang-dotnet=\"`60`\" pulumi-lang-go=\"`60`\" pulumi-lang-python=\"`60`\" pulumi-lang-yaml=\"`60`\" pulumi-lang-java=\"`60`\"\u003e`60`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`600`\" pulumi-lang-dotnet=\"`600`\" pulumi-lang-go=\"`600`\" pulumi-lang-python=\"`600`\" pulumi-lang-yaml=\"`600`\" pulumi-lang-java=\"`600`\"\u003e`600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`900`\" pulumi-lang-dotnet=\"`900`\" pulumi-lang-go=\"`900`\" pulumi-lang-python=\"`900`\" pulumi-lang-yaml=\"`900`\" pulumi-lang-java=\"`900`\"\u003e`900`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1800`\" pulumi-lang-dotnet=\"`1800`\" pulumi-lang-go=\"`1800`\" pulumi-lang-python=\"`1800`\" pulumi-lang-yaml=\"`1800`\" pulumi-lang-java=\"`1800`\"\u003e`1800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3600`\" pulumi-lang-dotnet=\"`3600`\" pulumi-lang-go=\"`3600`\" pulumi-lang-python=\"`3600`\" pulumi-lang-yaml=\"`3600`\" pulumi-lang-java=\"`3600`\"\u003e`3600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`7200`\" pulumi-lang-dotnet=\"`7200`\" pulumi-lang-go=\"`7200`\" pulumi-lang-python=\"`7200`\" pulumi-lang-yaml=\"`7200`\" pulumi-lang-java=\"`7200`\"\u003e`7200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10800`\" pulumi-lang-dotnet=\"`10800`\" pulumi-lang-go=\"`10800`\" pulumi-lang-python=\"`10800`\" pulumi-lang-yaml=\"`10800`\" pulumi-lang-java=\"`10800`\"\u003e`10800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`21600`\" pulumi-lang-dotnet=\"`21600`\" pulumi-lang-go=\"`21600`\" pulumi-lang-python=\"`21600`\" pulumi-lang-yaml=\"`21600`\" pulumi-lang-java=\"`21600`\"\u003e`21600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`43200`\" pulumi-lang-dotnet=\"`43200`\" pulumi-lang-go=\"`43200`\" pulumi-lang-python=\"`43200`\" pulumi-lang-yaml=\"`43200`\" pulumi-lang-java=\"`43200`\"\u003e`43200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`86400`\" pulumi-lang-dotnet=\"`86400`\" pulumi-lang-go=\"`86400`\" pulumi-lang-python=\"`86400`\" pulumi-lang-yaml=\"`86400`\" pulumi-lang-java=\"`86400`\"\u003e`86400`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Unique name of the step.\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "name"
            ]
        },
        "datadog:index/SecurityMonitoringRuleOptionsSequenceDetectionOptionsStepTransition:SecurityMonitoringRuleOptionsSequenceDetectionOptionsStepTransition": {
            "properties": {
                "child": {
                    "type": "string",
                    "description": "Child step name.\n"
                },
                "evaluationWindow": {
                    "type": "integer",
                    "description": "Maximum time allowed to transition from parent to child. Valid values are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`60`\" pulumi-lang-dotnet=\"`60`\" pulumi-lang-go=\"`60`\" pulumi-lang-python=\"`60`\" pulumi-lang-yaml=\"`60`\" pulumi-lang-java=\"`60`\"\u003e`60`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`600`\" pulumi-lang-dotnet=\"`600`\" pulumi-lang-go=\"`600`\" pulumi-lang-python=\"`600`\" pulumi-lang-yaml=\"`600`\" pulumi-lang-java=\"`600`\"\u003e`600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`900`\" pulumi-lang-dotnet=\"`900`\" pulumi-lang-go=\"`900`\" pulumi-lang-python=\"`900`\" pulumi-lang-yaml=\"`900`\" pulumi-lang-java=\"`900`\"\u003e`900`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1800`\" pulumi-lang-dotnet=\"`1800`\" pulumi-lang-go=\"`1800`\" pulumi-lang-python=\"`1800`\" pulumi-lang-yaml=\"`1800`\" pulumi-lang-java=\"`1800`\"\u003e`1800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3600`\" pulumi-lang-dotnet=\"`3600`\" pulumi-lang-go=\"`3600`\" pulumi-lang-python=\"`3600`\" pulumi-lang-yaml=\"`3600`\" pulumi-lang-java=\"`3600`\"\u003e`3600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`7200`\" pulumi-lang-dotnet=\"`7200`\" pulumi-lang-go=\"`7200`\" pulumi-lang-python=\"`7200`\" pulumi-lang-yaml=\"`7200`\" pulumi-lang-java=\"`7200`\"\u003e`7200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10800`\" pulumi-lang-dotnet=\"`10800`\" pulumi-lang-go=\"`10800`\" pulumi-lang-python=\"`10800`\" pulumi-lang-yaml=\"`10800`\" pulumi-lang-java=\"`10800`\"\u003e`10800`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`21600`\" pulumi-lang-dotnet=\"`21600`\" pulumi-lang-go=\"`21600`\" pulumi-lang-python=\"`21600`\" pulumi-lang-yaml=\"`21600`\" pulumi-lang-java=\"`21600`\"\u003e`21600`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`43200`\" pulumi-lang-dotnet=\"`43200`\" pulumi-lang-go=\"`43200`\" pulumi-lang-python=\"`43200`\" pulumi-lang-yaml=\"`43200`\" pulumi-lang-java=\"`43200`\"\u003e`43200`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`86400`\" pulumi-lang-dotnet=\"`86400`\" pulumi-lang-go=\"`86400`\" pulumi-lang-python=\"`86400`\" pulumi-lang-yaml=\"`86400`\" pulumi-lang-java=\"`86400`\"\u003e`86400`\u003c/span\u003e.\n"
                },
                "parent": {
                    "type": "string",
                    "description": "Parent step name.\n"
                }
            },
            "type": "object",
            "required": [
                "child",
                "parent"
            ]
        },
        "datadog:index/SecurityMonitoringRuleOptionsThirdPartyRuleOptions:SecurityMonitoringRuleOptionsThirdPartyRuleOptions": {
            "properties": {
                "defaultNotifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Notification targets for the default rule case, when none of the third-party cases match.\n"
                },
                "defaultStatus": {
                    "type": "string",
                    "description": "Severity of the default rule case, when none of the third-party cases match. Valid values are \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                },
                "rootQueries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptionsThirdPartyRuleOptionsRootQuery:SecurityMonitoringRuleOptionsThirdPartyRuleOptionsRootQuery"
                    },
                    "description": "Queries to be combined with third-party case queries. Each of them can have different group by fields, to aggregate differently based on the type of alert.\n"
                },
                "signalTitleTemplate": {
                    "type": "string",
                    "description": "A template for the signal title; if omitted, the title is generated based on the case name.\n"
                }
            },
            "type": "object",
            "required": [
                "defaultStatus",
                "rootQueries"
            ]
        },
        "datadog:index/SecurityMonitoringRuleOptionsThirdPartyRuleOptionsRootQuery:SecurityMonitoringRuleOptionsThirdPartyRuleOptionsRootQuery": {
            "properties": {
                "groupByFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Fields to group by. If empty, each log triggers a signal.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query to filter logs.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/SecurityMonitoringRuleQuery:SecurityMonitoringRuleQuery": {
            "properties": {
                "agentRules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleQueryAgentRule:SecurityMonitoringRuleQueryAgentRule"
                    },
                    "description": "**Deprecated**. It won't be applied anymore. **Deprecated.** \u003cspan pulumi-lang-nodejs=\"`agentRule`\" pulumi-lang-dotnet=\"`AgentRule`\" pulumi-lang-go=\"`agentRule`\" pulumi-lang-python=\"`agent_rule`\" pulumi-lang-yaml=\"`agentRule`\" pulumi-lang-java=\"`agentRule`\"\u003e`agentRule`\u003c/span\u003e has been deprecated in favor of new Agent Rule resource.\n",
                    "deprecationMessage": "\u003cspan pulumi-lang-nodejs=\"`agentRule`\" pulumi-lang-dotnet=\"`AgentRule`\" pulumi-lang-go=\"`agentRule`\" pulumi-lang-python=\"`agent_rule`\" pulumi-lang-yaml=\"`agentRule`\" pulumi-lang-java=\"`agentRule`\"\u003e`agentRule`\u003c/span\u003e has been deprecated in favor of new Agent Rule resource."
                },
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation type. For Signal Correlation rules, it must be event_count. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventCount`\" pulumi-lang-dotnet=\"`EventCount`\" pulumi-lang-go=\"`eventCount`\" pulumi-lang-python=\"`event_count`\" pulumi-lang-yaml=\"`eventCount`\" pulumi-lang-java=\"`eventCount`\"\u003e`eventCount`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e. Defaults to `\"count\"`.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "Source of events. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`audit`\" pulumi-lang-dotnet=\"`Audit`\" pulumi-lang-go=\"`audit`\" pulumi-lang-python=\"`audit`\" pulumi-lang-yaml=\"`audit`\" pulumi-lang-java=\"`audit`\"\u003e`audit`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`appSecSpans`\" pulumi-lang-dotnet=\"`AppSecSpans`\" pulumi-lang-go=\"`appSecSpans`\" pulumi-lang-python=\"`app_sec_spans`\" pulumi-lang-yaml=\"`appSecSpans`\" pulumi-lang-java=\"`appSecSpans`\"\u003e`appSecSpans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`spans`\" pulumi-lang-dotnet=\"`Spans`\" pulumi-lang-go=\"`spans`\" pulumi-lang-python=\"`spans`\" pulumi-lang-yaml=\"`spans`\" pulumi-lang-java=\"`spans`\"\u003e`spans`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`securityRuntime`\" pulumi-lang-dotnet=\"`SecurityRuntime`\" pulumi-lang-go=\"`securityRuntime`\" pulumi-lang-python=\"`security_runtime`\" pulumi-lang-yaml=\"`securityRuntime`\" pulumi-lang-java=\"`securityRuntime`\"\u003e`securityRuntime`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e. Defaults to `\"logs\"`.\n"
                },
                "distinctFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Field for which the cardinality is measured. Sent as an array.\n"
                },
                "groupByFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Fields to group by.\n"
                },
                "hasOptionalGroupByFields": {
                    "type": "boolean",
                    "description": "When false, events without a group-by value are ignored by the rule. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of indexes to run the query on when the data source is \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e. Supports only one element. Used only for scheduled rules (in other words, when \u003cspan pulumi-lang-nodejs=\"`schedulingOptions`\" pulumi-lang-dotnet=\"`SchedulingOptions`\" pulumi-lang-go=\"`schedulingOptions`\" pulumi-lang-python=\"`scheduling_options`\" pulumi-lang-yaml=\"`schedulingOptions`\" pulumi-lang-java=\"`schedulingOptions`\"\u003e`schedulingOptions`\u003c/span\u003e is defined).\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The target field to aggregate over when using the \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e aggregations. **Deprecated.** Configure \u003cspan pulumi-lang-nodejs=\"`metrics`\" pulumi-lang-dotnet=\"`Metrics`\" pulumi-lang-go=\"`metrics`\" pulumi-lang-python=\"`metrics`\" pulumi-lang-yaml=\"`metrics`\" pulumi-lang-java=\"`metrics`\"\u003e`metrics`\u003c/span\u003e instead. This attribute will be removed in the next major version of the provider.\n",
                    "deprecationMessage": "Configure \u003cspan pulumi-lang-nodejs=\"`metrics`\" pulumi-lang-dotnet=\"`Metrics`\" pulumi-lang-go=\"`metrics`\" pulumi-lang-python=\"`metrics`\" pulumi-lang-yaml=\"`metrics`\" pulumi-lang-java=\"`metrics`\"\u003e`metrics`\u003c/span\u003e instead. This attribute will be removed in the next major version of the provider."
                },
                "metrics": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Group of target fields to aggregate over when using the \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregations. The \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e aggregations only accept one value in this list, whereas the \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregation accepts up to five values.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the query. Not compatible with \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregations.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query to run on logs.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "metrics",
                        "query"
                    ]
                }
            }
        },
        "datadog:index/SecurityMonitoringRuleQueryAgentRule:SecurityMonitoringRuleQueryAgentRule": {
            "properties": {
                "agentRuleId": {
                    "type": "string",
                    "description": "**Deprecated**. It won't be applied anymore.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "**Deprecated**. It won't be applied anymore.\n"
                }
            },
            "type": "object",
            "required": [
                "agentRuleId",
                "expression"
            ]
        },
        "datadog:index/SecurityMonitoringRuleReferenceTable:SecurityMonitoringRuleReferenceTable": {
            "properties": {
                "checkPresence": {
                    "type": "boolean",
                    "description": "Whether to include or exclude logs that match the reference table.\n"
                },
                "columnName": {
                    "type": "string",
                    "description": "The name of the column in the reference table.\n"
                },
                "logFieldPath": {
                    "type": "string",
                    "description": "The field in the log that should be matched against the reference table.\n"
                },
                "ruleQueryName": {
                    "type": "string",
                    "description": "The name of the query to filter.\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "The name of the reference table.\n"
                }
            },
            "type": "object",
            "required": [
                "checkPresence",
                "columnName",
                "logFieldPath",
                "ruleQueryName",
                "tableName"
            ]
        },
        "datadog:index/SecurityMonitoringRuleSchedulingOptions:SecurityMonitoringRuleSchedulingOptions": {
            "properties": {
                "rrule": {
                    "type": "string",
                    "description": "Schedule for the rule queries, written in RRULE syntax. See [RFC](https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html) for syntax reference.\n"
                },
                "start": {
                    "type": "string",
                    "description": "Start date for the schedule, in ISO 8601 format without timezone.\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "Time zone of the start date, in the [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) format.\n"
                }
            },
            "type": "object",
            "required": [
                "rrule",
                "start",
                "timezone"
            ]
        },
        "datadog:index/SecurityMonitoringRuleSignalQuery:SecurityMonitoringRuleSignalQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation type. For Signal Correlation rules, it must be event_count. Valid values are \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`cardinality`\" pulumi-lang-dotnet=\"`Cardinality`\" pulumi-lang-go=\"`cardinality`\" pulumi-lang-python=\"`cardinality`\" pulumi-lang-yaml=\"`cardinality`\" pulumi-lang-java=\"`cardinality`\"\u003e`cardinality`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`eventCount`\" pulumi-lang-dotnet=\"`EventCount`\" pulumi-lang-go=\"`eventCount`\" pulumi-lang-python=\"`event_count`\" pulumi-lang-yaml=\"`eventCount`\" pulumi-lang-java=\"`eventCount`\"\u003e`eventCount`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e. Defaults to `\u003cspan pulumi-lang-nodejs=\"\"eventCount\"\" pulumi-lang-dotnet=\"\"EventCount\"\" pulumi-lang-go=\"\"eventCount\"\" pulumi-lang-python=\"\"event_count\"\" pulumi-lang-yaml=\"\"eventCount\"\" pulumi-lang-java=\"\"eventCount\"\"\u003e\"eventCount\"\u003c/span\u003e`.\n"
                },
                "correlatedByFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Fields to correlate by.\n"
                },
                "correlatedQueryIndex": {
                    "type": "string",
                    "description": "Index of the rule query used to retrieve the correlated field. An empty string applies correlation on the non-projected per query attributes of the rule. Defaults to `\"\"`.\n"
                },
                "defaultRuleId": {
                    "type": "string",
                    "description": "Default Rule ID of the signal to correlate. This value is READ-ONLY.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the query. Not compatible with \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregations.\n"
                },
                "ruleId": {
                    "type": "string",
                    "description": "Rule ID of the signal to correlate.\n"
                }
            },
            "type": "object",
            "required": [
                "ruleId"
            ]
        },
        "datadog:index/SecurityMonitoringRuleThirdPartyCase:SecurityMonitoringRuleThirdPartyCase": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the case.\n"
                },
                "notifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Notification targets for each rule case.\n"
                },
                "query": {
                    "type": "string",
                    "description": "A query to associate a third-party event to this case.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Severity of the Security Signal. Valid values are \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "status"
            ]
        },
        "datadog:index/SecurityNotificationRuleSelectors:SecurityNotificationRuleSelectors": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Comprises one or several key:value pairs for filtering security issues based on tags and attributes. Defaults to `\"\"`.\n"
                },
                "ruleTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Specifies security rule types for filtering signals and vulnerabilities that generate notifications.\n"
                },
                "severities": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The security rules severities to consider.\n"
                },
                "triggerSource": {
                    "type": "string",
                    "description": "The type of security issues the rule applies to. Use \u003cspan pulumi-lang-nodejs=\"`securitySignals`\" pulumi-lang-dotnet=\"`SecuritySignals`\" pulumi-lang-go=\"`securitySignals`\" pulumi-lang-python=\"`security_signals`\" pulumi-lang-yaml=\"`securitySignals`\" pulumi-lang-java=\"`securitySignals`\"\u003e`securitySignals`\u003c/span\u003e for rules based on security signals and \u003cspan pulumi-lang-nodejs=\"`securityFindings`\" pulumi-lang-dotnet=\"`SecurityFindings`\" pulumi-lang-go=\"`securityFindings`\" pulumi-lang-python=\"`security_findings`\" pulumi-lang-yaml=\"`securityFindings`\" pulumi-lang-java=\"`securityFindings`\"\u003e`securityFindings`\u003c/span\u003e for those based on vulnerabilities.\n"
                }
            },
            "type": "object",
            "required": [
                "ruleTypes",
                "triggerSource"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "query",
                        "ruleTypes",
                        "severities",
                        "triggerSource"
                    ]
                }
            }
        },
        "datadog:index/SensitiveDataScannerGroupFilter:SensitiveDataScannerGroupFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Query to filter the events.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ]
        },
        "datadog:index/SensitiveDataScannerGroupSampling:SensitiveDataScannerGroupSampling": {
            "properties": {
                "product": {
                    "type": "string",
                    "description": "Product that the sampling rate applies to. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apm`\" pulumi-lang-dotnet=\"`Apm`\" pulumi-lang-go=\"`apm`\" pulumi-lang-python=\"`apm`\" pulumi-lang-yaml=\"`apm`\" pulumi-lang-java=\"`apm`\"\u003e`apm`\u003c/span\u003e.\n"
                },
                "rate": {
                    "type": "number",
                    "description": "Percentage rate at which data for the product type is scanned.\n"
                }
            },
            "type": "object",
            "required": [
                "product",
                "rate"
            ]
        },
        "datadog:index/SensitiveDataScannerRuleIncludedKeywordConfiguration:SensitiveDataScannerRuleIncludedKeywordConfiguration": {
            "properties": {
                "characterCount": {
                    "type": "integer",
                    "description": "Number of characters before the match to find a keyword validating the match. It must be between 1 and 50 (inclusive).\n"
                },
                "keywords": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Keyword list that is checked during scanning in order to validate a match. The number of keywords in the list must be lower than or equal to 30.\n"
                }
            },
            "type": "object",
            "required": [
                "characterCount",
                "keywords"
            ]
        },
        "datadog:index/SensitiveDataScannerRuleTextReplacement:SensitiveDataScannerRuleTextReplacement": {
            "properties": {
                "numberOfChars": {
                    "type": "integer",
                    "description": "Required if type == 'partial*replacement*from*beginning' or 'partial*replacement*from*end'. It must be \u003e 0.\n"
                },
                "replacementString": {
                    "type": "string",
                    "description": "Required if type == 'replacement_string'.\n"
                },
                "shouldSaveMatch": {
                    "type": "boolean",
                    "description": "Only valid when type == \u003cspan pulumi-lang-nodejs=\"`replacementString`\" pulumi-lang-dotnet=\"`ReplacementString`\" pulumi-lang-go=\"`replacementString`\" pulumi-lang-python=\"`replacement_string`\" pulumi-lang-yaml=\"`replacementString`\" pulumi-lang-java=\"`replacementString`\"\u003e`replacementString`\u003c/span\u003e. When enabled, matches can be unmasked in logs by users with ‘Data Scanner Unmask’ permission. As a security best practice, avoid masking for highly-sensitive, long-lived data.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the replacement text. None means no replacement. hash means the data will be stubbed. replacement*string means that one can chose a text to replace the data. partial*replacement*from*beginning allows a user to partially replace the data from the beginning, and partial*replacement*from_end on the other hand, allows to replace data from the end. Valid values are \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hash`\" pulumi-lang-dotnet=\"`Hash`\" pulumi-lang-go=\"`hash`\" pulumi-lang-python=\"`hash`\" pulumi-lang-yaml=\"`hash`\" pulumi-lang-java=\"`hash`\"\u003e`hash`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`replacementString`\" pulumi-lang-dotnet=\"`ReplacementString`\" pulumi-lang-go=\"`replacementString`\" pulumi-lang-python=\"`replacement_string`\" pulumi-lang-yaml=\"`replacementString`\" pulumi-lang-java=\"`replacementString`\"\u003e`replacementString`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`partialReplacementFromBeginning`\" pulumi-lang-dotnet=\"`PartialReplacementFromBeginning`\" pulumi-lang-go=\"`partialReplacementFromBeginning`\" pulumi-lang-python=\"`partial_replacement_from_beginning`\" pulumi-lang-yaml=\"`partialReplacementFromBeginning`\" pulumi-lang-java=\"`partialReplacementFromBeginning`\"\u003e`partialReplacementFromBeginning`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`partialReplacementFromEnd`\" pulumi-lang-dotnet=\"`PartialReplacementFromEnd`\" pulumi-lang-go=\"`partialReplacementFromEnd`\" pulumi-lang-python=\"`partial_replacement_from_end`\" pulumi-lang-yaml=\"`partialReplacementFromEnd`\" pulumi-lang-java=\"`partialReplacementFromEnd`\"\u003e`partialReplacementFromEnd`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/ServiceLevelObjectiveQuery:ServiceLevelObjectiveQuery": {
            "properties": {
                "denominator": {
                    "type": "string",
                    "description": "The sum of the \u003cspan pulumi-lang-nodejs=\"`total`\" pulumi-lang-dotnet=\"`Total`\" pulumi-lang-go=\"`total`\" pulumi-lang-python=\"`total`\" pulumi-lang-yaml=\"`total`\" pulumi-lang-java=\"`total`\"\u003e`total`\u003c/span\u003e events.\n"
                },
                "numerator": {
                    "type": "string",
                    "description": "The sum of all the \u003cspan pulumi-lang-nodejs=\"`good`\" pulumi-lang-dotnet=\"`Good`\" pulumi-lang-go=\"`good`\" pulumi-lang-python=\"`good`\" pulumi-lang-yaml=\"`good`\" pulumi-lang-java=\"`good`\"\u003e`good`\u003c/span\u003e events.\n"
                }
            },
            "type": "object",
            "required": [
                "denominator",
                "numerator"
            ]
        },
        "datadog:index/ServiceLevelObjectiveSliSpecification:ServiceLevelObjectiveSliSpecification": {
            "properties": {
                "count": {
                    "$ref": "#/types/datadog:index/ServiceLevelObjectiveSliSpecificationCount:ServiceLevelObjectiveSliSpecificationCount",
                    "description": "A count-based (metric) SLI specification. Composed of a good events formula, either a total events formula or a bad events formula (but not both), and the underlying metric queries.\n"
                },
                "timeSlice": {
                    "$ref": "#/types/datadog:index/ServiceLevelObjectiveSliSpecificationTimeSlice:ServiceLevelObjectiveSliSpecificationTimeSlice",
                    "description": "The time slice condition, composed of 3 parts: 1. The timeseries query, 2. The comparator, and 3. The threshold. Optionally, a fourth part, the query interval, can be provided.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ServiceLevelObjectiveSliSpecificationCount:ServiceLevelObjectiveSliSpecificationCount": {
            "properties": {
                "badEventsFormula": {
                    "type": "string",
                    "description": "The formula that specifies how to compute the bad events. Mutually exclusive with \u003cspan pulumi-lang-nodejs=\"`totalEventsFormula`\" pulumi-lang-dotnet=\"`TotalEventsFormula`\" pulumi-lang-go=\"`totalEventsFormula`\" pulumi-lang-python=\"`total_events_formula`\" pulumi-lang-yaml=\"`totalEventsFormula`\" pulumi-lang-java=\"`totalEventsFormula`\"\u003e`totalEventsFormula`\u003c/span\u003e.\n"
                },
                "goodEventsFormula": {
                    "type": "string",
                    "description": "The formula that specifies how to compute the good events.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ServiceLevelObjectiveSliSpecificationCountQuery:ServiceLevelObjectiveSliSpecificationCountQuery"
                    },
                    "description": "A list of data-source-specific queries that are referenced in the formulas.\n"
                },
                "totalEventsFormula": {
                    "type": "string",
                    "description": "The formula that specifies how to compute the total events. Mutually exclusive with \u003cspan pulumi-lang-nodejs=\"`badEventsFormula`\" pulumi-lang-dotnet=\"`BadEventsFormula`\" pulumi-lang-go=\"`badEventsFormula`\" pulumi-lang-python=\"`bad_events_formula`\" pulumi-lang-yaml=\"`badEventsFormula`\" pulumi-lang-java=\"`badEventsFormula`\"\u003e`badEventsFormula`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "goodEventsFormula",
                "queries"
            ]
        },
        "datadog:index/ServiceLevelObjectiveSliSpecificationCountQuery:ServiceLevelObjectiveSliSpecificationCountQuery": {
            "properties": {
                "metricQuery": {
                    "$ref": "#/types/datadog:index/ServiceLevelObjectiveSliSpecificationCountQueryMetricQuery:ServiceLevelObjectiveSliSpecificationCountQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ServiceLevelObjectiveSliSpecificationCountQueryMetricQuery:ServiceLevelObjectiveSliSpecificationCountQueryMetricQuery": {
            "properties": {
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/ServiceLevelObjectiveSliSpecificationTimeSlice:ServiceLevelObjectiveSliSpecificationTimeSlice": {
            "properties": {
                "comparator": {
                    "type": "string",
                    "description": "The comparator used to compare the SLI value to the threshold. Valid values are `\u003e`, `\u003e=`, `\u003c`, `\u003c=`.\n"
                },
                "query": {
                    "$ref": "#/types/datadog:index/ServiceLevelObjectiveSliSpecificationTimeSliceQuery:ServiceLevelObjectiveSliSpecificationTimeSliceQuery",
                    "description": "A timeseries query, containing named data-source-specific queries and a formula involving the named queries.\n"
                },
                "queryIntervalSeconds": {
                    "type": "integer",
                    "description": "The interval used when querying data, which defines the size of a time slice. Valid values are \u003cspan pulumi-lang-nodejs=\"`60`\" pulumi-lang-dotnet=\"`60`\" pulumi-lang-go=\"`60`\" pulumi-lang-python=\"`60`\" pulumi-lang-yaml=\"`60`\" pulumi-lang-java=\"`60`\"\u003e`60`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e.\n"
                },
                "threshold": {
                    "type": "number",
                    "description": "The threshold value to which each SLI value will be compared.\n"
                }
            },
            "type": "object",
            "required": [
                "comparator",
                "query",
                "threshold"
            ]
        },
        "datadog:index/ServiceLevelObjectiveSliSpecificationTimeSliceQuery:ServiceLevelObjectiveSliSpecificationTimeSliceQuery": {
            "properties": {
                "formula": {
                    "$ref": "#/types/datadog:index/ServiceLevelObjectiveSliSpecificationTimeSliceQueryFormula:ServiceLevelObjectiveSliSpecificationTimeSliceQueryFormula",
                    "description": "A list that contains exactly one formula, as only a single formula may be used to define a timeseries query for a time-slice SLO.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ServiceLevelObjectiveSliSpecificationTimeSliceQueryQuery:ServiceLevelObjectiveSliSpecificationTimeSliceQueryQuery"
                    },
                    "description": "A list of data-source-specific queries that are in the formula.\n"
                }
            },
            "type": "object",
            "required": [
                "formula",
                "queries"
            ]
        },
        "datadog:index/ServiceLevelObjectiveSliSpecificationTimeSliceQueryFormula:ServiceLevelObjectiveSliSpecificationTimeSliceQueryFormula": {
            "properties": {
                "formulaExpression": {
                    "type": "string",
                    "description": "The formula string, which is an expression involving named queries.\n"
                }
            },
            "type": "object",
            "required": [
                "formulaExpression"
            ]
        },
        "datadog:index/ServiceLevelObjectiveSliSpecificationTimeSliceQueryQuery:ServiceLevelObjectiveSliSpecificationTimeSliceQueryQuery": {
            "properties": {
                "metricQuery": {
                    "$ref": "#/types/datadog:index/ServiceLevelObjectiveSliSpecificationTimeSliceQueryQueryMetricQuery:ServiceLevelObjectiveSliSpecificationTimeSliceQueryQueryMetricQuery",
                    "description": "A timeseries formula and functions metrics query.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/ServiceLevelObjectiveSliSpecificationTimeSliceQueryQueryMetricQuery:ServiceLevelObjectiveSliSpecificationTimeSliceQueryQueryMetricQuery": {
            "properties": {
                "dataSource": {
                    "type": "string",
                    "description": "The data source for metrics queries. Defaults to `\"metrics\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the query for use in formulas.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The metrics query definition.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ]
        },
        "datadog:index/ServiceLevelObjectiveThreshold:ServiceLevelObjectiveThreshold": {
            "properties": {
                "target": {
                    "type": "number",
                    "description": "The objective's target in `(0,100)`.\n"
                },
                "targetDisplay": {
                    "type": "string",
                    "description": "A string representation of the target that indicates its precision. It uses trailing zeros to show significant decimal places (e.g. `98.00`).\n"
                },
                "timeframe": {
                    "type": "string",
                    "description": "The time frame for the objective. The mapping from these types to the types found in the Datadog Web UI can be found in the Datadog API documentation page. Valid values are \u003cspan pulumi-lang-nodejs=\"`7d`\" pulumi-lang-dotnet=\"`7d`\" pulumi-lang-go=\"`7d`\" pulumi-lang-python=\"`7d`\" pulumi-lang-yaml=\"`7d`\" pulumi-lang-java=\"`7d`\"\u003e`7d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30d`\" pulumi-lang-dotnet=\"`30d`\" pulumi-lang-go=\"`30d`\" pulumi-lang-python=\"`30d`\" pulumi-lang-yaml=\"`30d`\" pulumi-lang-java=\"`30d`\"\u003e`30d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`90d`\" pulumi-lang-dotnet=\"`90d`\" pulumi-lang-go=\"`90d`\" pulumi-lang-python=\"`90d`\" pulumi-lang-yaml=\"`90d`\" pulumi-lang-java=\"`90d`\"\u003e`90d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`custom`\" pulumi-lang-dotnet=\"`Custom`\" pulumi-lang-go=\"`custom`\" pulumi-lang-python=\"`custom`\" pulumi-lang-yaml=\"`custom`\" pulumi-lang-java=\"`custom`\"\u003e`custom`\u003c/span\u003e.\n"
                },
                "warning": {
                    "type": "number",
                    "description": "The objective's warning value in `(0,100)`. This must be greater than the target value.\n"
                },
                "warningDisplay": {
                    "type": "string",
                    "description": "A string representation of the warning target (see the description of the\u003cspan pulumi-lang-nodejs=\" targetDisplay \" pulumi-lang-dotnet=\" TargetDisplay \" pulumi-lang-go=\" targetDisplay \" pulumi-lang-python=\" target_display \" pulumi-lang-yaml=\" targetDisplay \" pulumi-lang-java=\" targetDisplay \"\u003e targetDisplay \u003c/span\u003efield for details).\n"
                }
            },
            "type": "object",
            "required": [
                "target",
                "timeframe"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "target",
                        "targetDisplay",
                        "timeframe",
                        "warningDisplay"
                    ]
                }
            }
        },
        "datadog:index/SpansMetricCompute:SpansMetricCompute": {
            "properties": {
                "aggregationType": {
                    "type": "string",
                    "description": "The type of aggregation to use. This field can't be updated after creation.\n"
                },
                "includePercentiles": {
                    "type": "boolean",
                    "description": "Toggle to include or exclude percentile aggregations for distribution metrics. Only present when the \u003cspan pulumi-lang-nodejs=\"`aggregationType`\" pulumi-lang-dotnet=\"`AggregationType`\" pulumi-lang-go=\"`aggregationType`\" pulumi-lang-python=\"`aggregation_type`\" pulumi-lang-yaml=\"`aggregationType`\" pulumi-lang-java=\"`aggregationType`\"\u003e`aggregationType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e.\n"
                },
                "path": {
                    "type": "string",
                    "description": "The path to the value the span-based metric will aggregate on (only used if the aggregation type is a \"distribution\"). This field can't be updated after creation.\n"
                }
            },
            "type": "object",
            "required": [
                "aggregationType"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "aggregationType",
                        "includePercentiles"
                    ]
                }
            }
        },
        "datadog:index/SpansMetricFilter:SpansMetricFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "The search query - following the span search syntax. Defaults to `\"*\"`.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "query"
                    ]
                }
            }
        },
        "datadog:index/SpansMetricGroupBy:SpansMetricGroupBy": {
            "properties": {
                "path": {
                    "type": "string",
                    "description": "The path to the value the span-based metric will be aggregated over.\n"
                },
                "tagName": {
                    "type": "string",
                    "description": "Eventual name of the tag that gets created. By default, the path attribute is used as the tag name.\n"
                }
            },
            "type": "object",
            "required": [
                "path"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "path",
                        "tagName"
                    ]
                }
            }
        },
        "datadog:index/SyntheticsGlobalVariableOptions:SyntheticsGlobalVariableOptions": {
            "properties": {
                "totpParameters": {
                    "$ref": "#/types/datadog:index/SyntheticsGlobalVariableOptionsTotpParameters:SyntheticsGlobalVariableOptionsTotpParameters",
                    "description": "Parameters needed for MFA/TOTP.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsGlobalVariableOptionsTotpParameters:SyntheticsGlobalVariableOptionsTotpParameters": {
            "properties": {
                "digits": {
                    "type": "integer",
                    "description": "Number of digits for the OTP. Value must be between 4 and 10.\n"
                },
                "refreshInterval": {
                    "type": "integer",
                    "description": "Interval for which to refresh the token (in seconds). Value must be between 0 and 999.\n"
                }
            },
            "type": "object",
            "required": [
                "digits",
                "refreshInterval"
            ]
        },
        "datadog:index/SyntheticsGlobalVariableParseTestOptions:SyntheticsGlobalVariableParseTestOptions": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "Required when type = \u003cspan pulumi-lang-nodejs=\"`httpHeader`\" pulumi-lang-dotnet=\"`HttpHeader`\" pulumi-lang-go=\"`httpHeader`\" pulumi-lang-python=\"`http_header`\" pulumi-lang-yaml=\"`httpHeader`\" pulumi-lang-java=\"`httpHeader`\"\u003e`httpHeader`\u003c/span\u003e. Defines the header to use to extract the value\n"
                },
                "localVariableName": {
                    "type": "string",
                    "description": "When type is \u003cspan pulumi-lang-nodejs=\"`localVariable`\" pulumi-lang-dotnet=\"`LocalVariable`\" pulumi-lang-go=\"`localVariable`\" pulumi-lang-python=\"`local_variable`\" pulumi-lang-yaml=\"`localVariable`\" pulumi-lang-java=\"`localVariable`\"\u003e`localVariable`\u003c/span\u003e, name of the local variable to use to extract the value.\n"
                },
                "parser": {
                    "$ref": "#/types/datadog:index/SyntheticsGlobalVariableParseTestOptionsParser:SyntheticsGlobalVariableParseTestOptionsParser"
                },
                "type": {
                    "type": "string",
                    "description": "Defines the source to use to extract the value. Valid values are \u003cspan pulumi-lang-nodejs=\"`httpBody`\" pulumi-lang-dotnet=\"`HttpBody`\" pulumi-lang-go=\"`httpBody`\" pulumi-lang-python=\"`http_body`\" pulumi-lang-yaml=\"`httpBody`\" pulumi-lang-java=\"`httpBody`\"\u003e`httpBody`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`httpHeader`\" pulumi-lang-dotnet=\"`HttpHeader`\" pulumi-lang-go=\"`httpHeader`\" pulumi-lang-python=\"`http_header`\" pulumi-lang-yaml=\"`httpHeader`\" pulumi-lang-java=\"`httpHeader`\"\u003e`httpHeader`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`httpStatusCode`\" pulumi-lang-dotnet=\"`HttpStatusCode`\" pulumi-lang-go=\"`httpStatusCode`\" pulumi-lang-python=\"`http_status_code`\" pulumi-lang-yaml=\"`httpStatusCode`\" pulumi-lang-java=\"`httpStatusCode`\"\u003e`httpStatusCode`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`localVariable`\" pulumi-lang-dotnet=\"`LocalVariable`\" pulumi-lang-go=\"`localVariable`\" pulumi-lang-python=\"`local_variable`\" pulumi-lang-yaml=\"`localVariable`\" pulumi-lang-java=\"`localVariable`\"\u003e`localVariable`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/SyntheticsGlobalVariableParseTestOptionsParser:SyntheticsGlobalVariableParseTestOptionsParser": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of parser to extract the value. Valid values are \u003cspan pulumi-lang-nodejs=\"`raw`\" pulumi-lang-dotnet=\"`Raw`\" pulumi-lang-go=\"`raw`\" pulumi-lang-python=\"`raw`\" pulumi-lang-yaml=\"`raw`\" pulumi-lang-java=\"`raw`\"\u003e`raw`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`jsonPath`\" pulumi-lang-dotnet=\"`JsonPath`\" pulumi-lang-go=\"`jsonPath`\" pulumi-lang-python=\"`json_path`\" pulumi-lang-yaml=\"`jsonPath`\" pulumi-lang-java=\"`jsonPath`\"\u003e`jsonPath`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`regex`\" pulumi-lang-dotnet=\"`Regex`\" pulumi-lang-go=\"`regex`\" pulumi-lang-python=\"`regex`\" pulumi-lang-yaml=\"`regex`\" pulumi-lang-java=\"`regex`\"\u003e`regex`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`xPath`\" pulumi-lang-dotnet=\"`XPath`\" pulumi-lang-go=\"`xPath`\" pulumi-lang-python=\"`x_path`\" pulumi-lang-yaml=\"`xPath`\" pulumi-lang-java=\"`xPath`\"\u003e`xPath`\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value for the parser to use, required for type \u003cspan pulumi-lang-nodejs=\"`jsonPath`\" pulumi-lang-dotnet=\"`JsonPath`\" pulumi-lang-go=\"`jsonPath`\" pulumi-lang-python=\"`json_path`\" pulumi-lang-yaml=\"`jsonPath`\" pulumi-lang-java=\"`jsonPath`\"\u003e`jsonPath`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`regex`\" pulumi-lang-dotnet=\"`Regex`\" pulumi-lang-go=\"`regex`\" pulumi-lang-python=\"`regex`\" pulumi-lang-yaml=\"`regex`\" pulumi-lang-java=\"`regex`\"\u003e`regex`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/SyntheticsPrivateLocationMetadata:SyntheticsPrivateLocationMetadata": {
            "properties": {
                "restrictedRoles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A set of role identifiers pulled from the Roles API to restrict read and write access. **Deprecated.** This field is no longer supported by the Datadog API. Please use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "This field is no longer supported by the Datadog API. Please use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e instead."
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsSuiteOption:SyntheticsSuiteOption": {
            "properties": {
                "alertingThreshold": {
                    "type": "number",
                    "description": "Alerting threshold for the suite. Value must be between 0.000000 and 1.000000.\n"
                }
            },
            "type": "object",
            "required": [
                "alertingThreshold"
            ]
        },
        "datadog:index/SyntheticsSuiteTest:SyntheticsSuiteTest": {
            "properties": {
                "alertingCriticality": {
                    "type": "string",
                    "description": "Alerting criticality for the test. Valid values are \u003cspan pulumi-lang-nodejs=\"`ignore`\" pulumi-lang-dotnet=\"`Ignore`\" pulumi-lang-go=\"`ignore`\" pulumi-lang-python=\"`ignore`\" pulumi-lang-yaml=\"`ignore`\" pulumi-lang-java=\"`ignore`\"\u003e`ignore`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                },
                "publicId": {
                    "type": "string",
                    "description": "Public ID of the test.\n"
                }
            },
            "type": "object",
            "required": [
                "publicId"
            ]
        },
        "datadog:index/SyntheticsTestApiStep:SyntheticsTestApiStep": {
            "properties": {
                "allowFailure": {
                    "type": "boolean",
                    "description": "Determines whether or not to continue with test if this step fails.\n"
                },
                "assertions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SyntheticsTestApiStepAssertion:SyntheticsTestApiStepAssertion"
                    },
                    "description": "Assertions used for the test. Multiple \u003cspan pulumi-lang-nodejs=\"`assertion`\" pulumi-lang-dotnet=\"`Assertion`\" pulumi-lang-go=\"`assertion`\" pulumi-lang-python=\"`assertion`\" pulumi-lang-yaml=\"`assertion`\" pulumi-lang-java=\"`assertion`\"\u003e`assertion`\u003c/span\u003e blocks are allowed with the structure below.\n"
                },
                "exitIfSucceed": {
                    "type": "boolean",
                    "description": "Determines whether or not to exit the test if the step succeeds.\n"
                },
                "extractedValues": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SyntheticsTestApiStepExtractedValue:SyntheticsTestApiStepExtractedValue"
                    },
                    "description": "Values to parse and save as variables from the response.\n"
                },
                "extractedValuesFromScript": {
                    "type": "string",
                    "description": "Generate variables using JavaScript.\n"
                },
                "id": {
                    "type": "string",
                    "description": "ID of the step.\n"
                },
                "isCritical": {
                    "type": "boolean",
                    "description": "Determines whether or not to consider the entire test as failed if this step fails. Can be used only if \u003cspan pulumi-lang-nodejs=\"`allowFailure`\" pulumi-lang-dotnet=\"`AllowFailure`\" pulumi-lang-go=\"`allowFailure`\" pulumi-lang-python=\"`allow_failure`\" pulumi-lang-yaml=\"`allowFailure`\" pulumi-lang-java=\"`allowFailure`\"\u003e`allowFailure`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the step.\n"
                },
                "requestBasicauth": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepRequestBasicauth:SyntheticsTestApiStepRequestBasicauth",
                    "description": "The HTTP basic authentication credentials. Exactly one nested block is allowed with the structure below.\n"
                },
                "requestClientCertificate": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepRequestClientCertificate:SyntheticsTestApiStepRequestClientCertificate",
                    "description": "Client certificate to use when performing the test request. Exactly one nested block is allowed with the structure below.\n"
                },
                "requestDefinition": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepRequestDefinition:SyntheticsTestApiStepRequestDefinition",
                    "description": "The request for the API step.\n"
                },
                "requestFiles": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SyntheticsTestApiStepRequestFile:SyntheticsTestApiStepRequestFile"
                    },
                    "description": "Files to be used as part of the request in the test.\n"
                },
                "requestHeaders": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Header name and value map.\n"
                },
                "requestMetadata": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Metadata to include when performing the gRPC request.\n"
                },
                "requestProxy": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepRequestProxy:SyntheticsTestApiStepRequestProxy",
                    "description": "The proxy to perform the test.\n"
                },
                "requestQuery": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Query arguments name and value map.\n"
                },
                "retry": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepRetry:SyntheticsTestApiStepRetry"
                },
                "subtestPublicId": {
                    "type": "string",
                    "description": "Public ID of the test to be played as part of a `playSubTest` step type.\n"
                },
                "subtype": {
                    "type": "string",
                    "description": "The subtype of the Synthetic multistep API test step. Valid values are \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grpc`\" pulumi-lang-dotnet=\"`Grpc`\" pulumi-lang-go=\"`grpc`\" pulumi-lang-python=\"`grpc`\" pulumi-lang-yaml=\"`grpc`\" pulumi-lang-java=\"`grpc`\"\u003e`grpc`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ssl`\" pulumi-lang-dotnet=\"`Ssl`\" pulumi-lang-go=\"`ssl`\" pulumi-lang-python=\"`ssl`\" pulumi-lang-yaml=\"`ssl`\" pulumi-lang-java=\"`ssl`\"\u003e`ssl`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tcp`\" pulumi-lang-dotnet=\"`Tcp`\" pulumi-lang-go=\"`tcp`\" pulumi-lang-python=\"`tcp`\" pulumi-lang-yaml=\"`tcp`\" pulumi-lang-java=\"`tcp`\"\u003e`tcp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`udp`\" pulumi-lang-dotnet=\"`Udp`\" pulumi-lang-go=\"`udp`\" pulumi-lang-python=\"`udp`\" pulumi-lang-yaml=\"`udp`\" pulumi-lang-java=\"`udp`\"\u003e`udp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`icmp`\" pulumi-lang-dotnet=\"`Icmp`\" pulumi-lang-go=\"`icmp`\" pulumi-lang-python=\"`icmp`\" pulumi-lang-yaml=\"`icmp`\" pulumi-lang-java=\"`icmp`\"\u003e`icmp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`websocket`\" pulumi-lang-dotnet=\"`Websocket`\" pulumi-lang-go=\"`websocket`\" pulumi-lang-python=\"`websocket`\" pulumi-lang-yaml=\"`websocket`\" pulumi-lang-java=\"`websocket`\"\u003e`websocket`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`wait`\" pulumi-lang-dotnet=\"`Wait`\" pulumi-lang-go=\"`wait`\" pulumi-lang-python=\"`wait`\" pulumi-lang-yaml=\"`wait`\" pulumi-lang-java=\"`wait`\"\u003e`wait`\u003c/span\u003e, `playSubTest`. Defaults to `\"http\"`.\n"
                },
                "value": {
                    "type": "integer",
                    "description": "The time to wait in seconds. Minimum value: 0. Maximum value: 180.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "id",
                        "name"
                    ]
                }
            }
        },
        "datadog:index/SyntheticsTestApiStepAssertion:SyntheticsTestApiStepAssertion": {
            "properties": {
                "code": {
                    "type": "string",
                    "description": "If assertion type is \u003cspan pulumi-lang-nodejs=\"`javascript`\" pulumi-lang-dotnet=\"`Javascript`\" pulumi-lang-go=\"`javascript`\" pulumi-lang-python=\"`javascript`\" pulumi-lang-yaml=\"`javascript`\" pulumi-lang-java=\"`javascript`\"\u003e`javascript`\u003c/span\u003e, this is the JavaScript code that performs the assertions.\n"
                },
                "operator": {
                    "type": "string",
                    "description": "Assertion operator. **Note:** Only some combinations of \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e are valid. Refer to `config.assertions` in the [Datadog API reference](https://docs.datadoghq.com/api/latest/synthetics/#create-an-api-test). Valid values are \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, `doesNotContain`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `isNot`, `lessThan`, `lessThanOrEqual`, `moreThan`, `moreThanOrEqual`, \u003cspan pulumi-lang-nodejs=\"`matches`\" pulumi-lang-dotnet=\"`Matches`\" pulumi-lang-go=\"`matches`\" pulumi-lang-python=\"`matches`\" pulumi-lang-yaml=\"`matches`\" pulumi-lang-java=\"`matches`\"\u003e`matches`\u003c/span\u003e, `doesNotMatch`, \u003cspan pulumi-lang-nodejs=\"`validates`\" pulumi-lang-dotnet=\"`Validates`\" pulumi-lang-go=\"`validates`\" pulumi-lang-python=\"`validates`\" pulumi-lang-yaml=\"`validates`\" pulumi-lang-java=\"`validates`\"\u003e`validates`\u003c/span\u003e, `isInMoreThan`, `isInLessThan`, `doesNotExist`, `isUndefined`, `validatesJSONPath`, `validatesJSONSchema`, `validatesXPath`, \u003cspan pulumi-lang-nodejs=\"`md5`\" pulumi-lang-dotnet=\"`Md5`\" pulumi-lang-go=\"`md5`\" pulumi-lang-python=\"`md5`\" pulumi-lang-yaml=\"`md5`\" pulumi-lang-java=\"`md5`\"\u003e`md5`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sha1`\" pulumi-lang-dotnet=\"`Sha1`\" pulumi-lang-go=\"`sha1`\" pulumi-lang-python=\"`sha1`\" pulumi-lang-yaml=\"`sha1`\" pulumi-lang-java=\"`sha1`\"\u003e`sha1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sha256`\" pulumi-lang-dotnet=\"`Sha256`\" pulumi-lang-go=\"`sha256`\" pulumi-lang-python=\"`sha256`\" pulumi-lang-yaml=\"`sha256`\" pulumi-lang-java=\"`sha256`\"\u003e`sha256`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `isNot`, `lessThan`, `lessThanOrEqual`, `moreThan`, `moreThanOrEqual`.\n"
                },
                "property": {
                    "type": "string",
                    "description": "If assertion type is \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e or `grpcMetadata`, this is the header name. For other assertion types, this is an aggregation property: \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`stddev`\" pulumi-lang-dotnet=\"`Stddev`\" pulumi-lang-go=\"`stddev`\" pulumi-lang-python=\"`stddev`\" pulumi-lang-yaml=\"`stddev`\" pulumi-lang-java=\"`stddev`\"\u003e`stddev`\u003c/span\u003e.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Expected value. **Note:** Depends on the assertion type. Refer to `config.assertions` in the [Datadog API reference](https://docs.datadoghq.com/api/latest/synthetics/#create-an-api-test).\n"
                },
                "targetjsonpath": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepAssertionTargetjsonpath:SyntheticsTestApiStepAssertionTargetjsonpath",
                    "description": "Expected structure if \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e is `validatesJSONPath`. Exactly one nested block is allowed with the structure below.\n"
                },
                "targetjsonschema": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepAssertionTargetjsonschema:SyntheticsTestApiStepAssertionTargetjsonschema",
                    "description": "Expected structure if \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e is `validatesJSONSchema`. Exactly one nested block is allowed with the structure below.\n"
                },
                "targetxpath": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepAssertionTargetxpath:SyntheticsTestApiStepAssertionTargetxpath",
                    "description": "Expected structure if \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e is `validatesXPath`. Exactly one nested block is allowed with the structure below.\n"
                },
                "timingsScope": {
                    "type": "string",
                    "description": "Timings scope for response time assertions. Valid values are \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, `withoutDNS`.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of assertion. **Note:** Only some combinations of \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e are valid. For API tests, refer to `config.assertions` in the [Datadog API reference](https://docs.datadoghq.com/api/latest/synthetics/#create-an-api-test). For Network Path tests, refer to `config.assertions` in the [Datadog API reference](https://docs.datadoghq.com/api/latest/synthetics/#create-a-network-path-test). Valid values are \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e, `statusCode`, \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e, `responseTime`, \u003cspan pulumi-lang-nodejs=\"`property`\" pulumi-lang-dotnet=\"`Property`\" pulumi-lang-go=\"`property`\" pulumi-lang-python=\"`property`\" pulumi-lang-yaml=\"`property`\" pulumi-lang-java=\"`property`\"\u003e`property`\u003c/span\u003e, `recordEvery`, `recordSome`, `tlsVersion`, `minTlsVersion`, \u003cspan pulumi-lang-nodejs=\"`latency`\" pulumi-lang-dotnet=\"`Latency`\" pulumi-lang-go=\"`latency`\" pulumi-lang-python=\"`latency`\" pulumi-lang-yaml=\"`latency`\" pulumi-lang-java=\"`latency`\"\u003e`latency`\u003c/span\u003e, `packetLossPercentage`, `packetsReceived`, `networkHop`, `receivedMessage`, `grpcHealthcheckStatus`, `grpcMetadata`, `grpcProto`, \u003cspan pulumi-lang-nodejs=\"`connection`\" pulumi-lang-dotnet=\"`Connection`\" pulumi-lang-go=\"`connection`\" pulumi-lang-python=\"`connection`\" pulumi-lang-yaml=\"`connection`\" pulumi-lang-java=\"`connection`\"\u003e`connection`\u003c/span\u003e, `multiNetworkHop`, \u003cspan pulumi-lang-nodejs=\"`jitter`\" pulumi-lang-dotnet=\"`Jitter`\" pulumi-lang-go=\"`jitter`\" pulumi-lang-python=\"`jitter`\" pulumi-lang-yaml=\"`jitter`\" pulumi-lang-java=\"`jitter`\"\u003e`jitter`\u003c/span\u003e, `bodyHash`, \u003cspan pulumi-lang-nodejs=\"`javascript`\" pulumi-lang-dotnet=\"`Javascript`\" pulumi-lang-go=\"`javascript`\" pulumi-lang-python=\"`javascript`\" pulumi-lang-yaml=\"`javascript`\" pulumi-lang-java=\"`javascript`\"\u003e`javascript`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/SyntheticsTestApiStepAssertionTargetjsonpath:SyntheticsTestApiStepAssertionTargetjsonpath": {
            "properties": {
                "elementsoperator": {
                    "type": "string",
                    "description": "The element from the list of results to assert on. Select from `firstElementMatches` (the first element in the list), `everyElementMatches` (every element in the list), `atLeastOneElementMatches` (at least one element in the list), or `serializationMatches` (the serialized value of the list). Defaults to `\"firstElementMatches\"`.\n"
                },
                "jsonpath": {
                    "type": "string",
                    "description": "The JSON path to assert.\n"
                },
                "operator": {
                    "type": "string",
                    "description": "The specific operator to use on the path.\n"
                },
                "targetvalue": {
                    "type": "string",
                    "description": "Expected matching value.\n"
                }
            },
            "type": "object",
            "required": [
                "jsonpath",
                "operator"
            ]
        },
        "datadog:index/SyntheticsTestApiStepAssertionTargetjsonschema:SyntheticsTestApiStepAssertionTargetjsonschema": {
            "properties": {
                "jsonschema": {
                    "type": "string",
                    "description": "The JSON Schema to validate the body against.\n"
                },
                "metaschema": {
                    "type": "string",
                    "description": "The meta schema to use for the JSON Schema. Defaults to `\"draft-07\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "jsonschema"
            ]
        },
        "datadog:index/SyntheticsTestApiStepAssertionTargetxpath:SyntheticsTestApiStepAssertionTargetxpath": {
            "properties": {
                "operator": {
                    "type": "string",
                    "description": "The specific operator to use on the path.\n"
                },
                "targetvalue": {
                    "type": "string",
                    "description": "Expected matching value.\n"
                },
                "xpath": {
                    "type": "string",
                    "description": "The xpath to assert.\n"
                }
            },
            "type": "object",
            "required": [
                "operator",
                "xpath"
            ]
        },
        "datadog:index/SyntheticsTestApiStepExtractedValue:SyntheticsTestApiStepExtractedValue": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "When type is \u003cspan pulumi-lang-nodejs=\"`httpHeader`\" pulumi-lang-dotnet=\"`HttpHeader`\" pulumi-lang-go=\"`httpHeader`\" pulumi-lang-python=\"`http_header`\" pulumi-lang-yaml=\"`httpHeader`\" pulumi-lang-java=\"`httpHeader`\"\u003e`httpHeader`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`grpcMetadata`\" pulumi-lang-dotnet=\"`GrpcMetadata`\" pulumi-lang-go=\"`grpcMetadata`\" pulumi-lang-python=\"`grpc_metadata`\" pulumi-lang-yaml=\"`grpcMetadata`\" pulumi-lang-java=\"`grpcMetadata`\"\u003e`grpcMetadata`\u003c/span\u003e, name of the header or metadatum to extract.\n"
                },
                "name": {
                    "type": "string"
                },
                "parser": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepExtractedValueParser:SyntheticsTestApiStepExtractedValueParser"
                },
                "secure": {
                    "type": "boolean",
                    "description": "Determines whether or not the extracted value will be obfuscated.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Property of the Synthetics Test Response to use for the variable. Valid values are \u003cspan pulumi-lang-nodejs=\"`grpcMessage`\" pulumi-lang-dotnet=\"`GrpcMessage`\" pulumi-lang-go=\"`grpcMessage`\" pulumi-lang-python=\"`grpc_message`\" pulumi-lang-yaml=\"`grpcMessage`\" pulumi-lang-java=\"`grpcMessage`\"\u003e`grpcMessage`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`grpcMetadata`\" pulumi-lang-dotnet=\"`GrpcMetadata`\" pulumi-lang-go=\"`grpcMetadata`\" pulumi-lang-python=\"`grpc_metadata`\" pulumi-lang-yaml=\"`grpcMetadata`\" pulumi-lang-java=\"`grpcMetadata`\"\u003e`grpcMetadata`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`httpBody`\" pulumi-lang-dotnet=\"`HttpBody`\" pulumi-lang-go=\"`httpBody`\" pulumi-lang-python=\"`http_body`\" pulumi-lang-yaml=\"`httpBody`\" pulumi-lang-java=\"`httpBody`\"\u003e`httpBody`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`httpHeader`\" pulumi-lang-dotnet=\"`HttpHeader`\" pulumi-lang-go=\"`httpHeader`\" pulumi-lang-python=\"`http_header`\" pulumi-lang-yaml=\"`httpHeader`\" pulumi-lang-java=\"`httpHeader`\"\u003e`httpHeader`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`httpStatusCode`\" pulumi-lang-dotnet=\"`HttpStatusCode`\" pulumi-lang-go=\"`httpStatusCode`\" pulumi-lang-python=\"`http_status_code`\" pulumi-lang-yaml=\"`httpStatusCode`\" pulumi-lang-java=\"`httpStatusCode`\"\u003e`httpStatusCode`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "parser",
                "type"
            ]
        },
        "datadog:index/SyntheticsTestApiStepExtractedValueParser:SyntheticsTestApiStepExtractedValueParser": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of parser for a Synthetics global variable from a synthetics test. Valid values are \u003cspan pulumi-lang-nodejs=\"`raw`\" pulumi-lang-dotnet=\"`Raw`\" pulumi-lang-go=\"`raw`\" pulumi-lang-python=\"`raw`\" pulumi-lang-yaml=\"`raw`\" pulumi-lang-java=\"`raw`\"\u003e`raw`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`jsonPath`\" pulumi-lang-dotnet=\"`JsonPath`\" pulumi-lang-go=\"`jsonPath`\" pulumi-lang-python=\"`json_path`\" pulumi-lang-yaml=\"`jsonPath`\" pulumi-lang-java=\"`jsonPath`\"\u003e`jsonPath`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`regex`\" pulumi-lang-dotnet=\"`Regex`\" pulumi-lang-go=\"`regex`\" pulumi-lang-python=\"`regex`\" pulumi-lang-yaml=\"`regex`\" pulumi-lang-java=\"`regex`\"\u003e`regex`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`xPath`\" pulumi-lang-dotnet=\"`XPath`\" pulumi-lang-go=\"`xPath`\" pulumi-lang-python=\"`x_path`\" pulumi-lang-yaml=\"`xPath`\" pulumi-lang-java=\"`xPath`\"\u003e`xPath`\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Regex or JSON path used for the parser. Not used with type \u003cspan pulumi-lang-nodejs=\"`raw`\" pulumi-lang-dotnet=\"`Raw`\" pulumi-lang-go=\"`raw`\" pulumi-lang-python=\"`raw`\" pulumi-lang-yaml=\"`raw`\" pulumi-lang-java=\"`raw`\"\u003e`raw`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/SyntheticsTestApiStepRequestBasicauth:SyntheticsTestApiStepRequestBasicauth": {
            "properties": {
                "accessKey": {
                    "type": "string",
                    "description": "Access key for `SIGV4` authentication.\n",
                    "secret": true
                },
                "accessTokenUrl": {
                    "type": "string",
                    "description": "Access token url for `oauth-client` or `oauth-rop` authentication.\n"
                },
                "audience": {
                    "type": "string",
                    "description": "Audience for `oauth-client` or `oauth-rop` authentication. Defaults to `\"\"`.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Client ID for `oauth-client` or `oauth-rop` authentication.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Client secret for `oauth-client` or `oauth-rop` authentication.\n",
                    "secret": true
                },
                "domain": {
                    "type": "string",
                    "description": "Domain for \u003cspan pulumi-lang-nodejs=\"`ntlm`\" pulumi-lang-dotnet=\"`Ntlm`\" pulumi-lang-go=\"`ntlm`\" pulumi-lang-python=\"`ntlm`\" pulumi-lang-yaml=\"`ntlm`\" pulumi-lang-java=\"`ntlm`\"\u003e`ntlm`\u003c/span\u003e authentication.\n"
                },
                "password": {
                    "type": "string",
                    "description": "Password for authentication.\n",
                    "secret": true
                },
                "region": {
                    "type": "string",
                    "description": "Region for `SIGV4` authentication.\n"
                },
                "resource": {
                    "type": "string",
                    "description": "Resource for `oauth-client` or `oauth-rop` authentication. Defaults to `\"\"`.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "Scope for `oauth-client` or `oauth-rop` authentication. Defaults to `\"\"`.\n"
                },
                "secretKey": {
                    "type": "string",
                    "description": "Secret key for `SIGV4` authentication.\n",
                    "secret": true
                },
                "serviceName": {
                    "type": "string",
                    "description": "Service name for `SIGV4` authentication.\n"
                },
                "sessionToken": {
                    "type": "string",
                    "description": "Session token for `SIGV4` authentication.\n"
                },
                "tokenApiAuthentication": {
                    "type": "string",
                    "description": "Token API Authentication for `oauth-client` or `oauth-rop` authentication. Valid values are \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of basic authentication to use when performing the test. Defaults to `\"web\"`.\n"
                },
                "username": {
                    "type": "string",
                    "description": "Username for authentication.\n"
                },
                "workstation": {
                    "type": "string",
                    "description": "Workstation for \u003cspan pulumi-lang-nodejs=\"`ntlm`\" pulumi-lang-dotnet=\"`Ntlm`\" pulumi-lang-go=\"`ntlm`\" pulumi-lang-python=\"`ntlm`\" pulumi-lang-yaml=\"`ntlm`\" pulumi-lang-java=\"`ntlm`\"\u003e`ntlm`\u003c/span\u003e authentication.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestApiStepRequestClientCertificate:SyntheticsTestApiStepRequestClientCertificate": {
            "properties": {
                "cert": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepRequestClientCertificateCert:SyntheticsTestApiStepRequestClientCertificateCert"
                },
                "key": {
                    "$ref": "#/types/datadog:index/SyntheticsTestApiStepRequestClientCertificateKey:SyntheticsTestApiStepRequestClientCertificateKey"
                }
            },
            "type": "object",
            "required": [
                "cert",
                "key"
            ]
        },
        "datadog:index/SyntheticsTestApiStepRequestClientCertificateCert:SyntheticsTestApiStepRequestClientCertificateCert": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "Content of the certificate.\n",
                    "secret": true
                },
                "filename": {
                    "type": "string",
                    "description": "File name for the certificate. Defaults to `\"Provided in Terraform config\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestApiStepRequestClientCertificateKey:SyntheticsTestApiStepRequestClientCertificateKey": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "Content of the certificate.\n",
                    "secret": true
                },
                "filename": {
                    "type": "string",
                    "description": "File name for the certificate. Defaults to `\"Provided in Terraform config\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestApiStepRequestDefinition:SyntheticsTestApiStepRequestDefinition": {
            "properties": {
                "acceptSelfSigned": {
                    "type": "boolean",
                    "description": "For SSL tests, whether or not the test should allow self signed certificates.\n"
                },
                "allowInsecure": {
                    "type": "boolean",
                    "description": "Allows loading insecure content for a request in an API test or in a multistep API test step.\n"
                },
                "body": {
                    "type": "string",
                    "description": "The request body.\n"
                },
                "bodyType": {
                    "type": "string",
                    "description": "Type of the request body. Valid values are `text/plain`, `application/json`, `text/xml`, `text/html`, `application/x-www-form-urlencoded`, \u003cspan pulumi-lang-nodejs=\"`graphql`\" pulumi-lang-dotnet=\"`Graphql`\" pulumi-lang-go=\"`graphql`\" pulumi-lang-python=\"`graphql`\" pulumi-lang-yaml=\"`graphql`\" pulumi-lang-java=\"`graphql`\"\u003e`graphql`\u003c/span\u003e, `application/octet-stream`, `multipart/form-data`.\n"
                },
                "callType": {
                    "type": "string",
                    "description": "The type of gRPC call to perform. Valid values are \u003cspan pulumi-lang-nodejs=\"`healthcheck`\" pulumi-lang-dotnet=\"`Healthcheck`\" pulumi-lang-go=\"`healthcheck`\" pulumi-lang-python=\"`healthcheck`\" pulumi-lang-yaml=\"`healthcheck`\" pulumi-lang-java=\"`healthcheck`\"\u003e`healthcheck`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`unary`\" pulumi-lang-dotnet=\"`Unary`\" pulumi-lang-go=\"`unary`\" pulumi-lang-python=\"`unary`\" pulumi-lang-yaml=\"`unary`\" pulumi-lang-java=\"`unary`\"\u003e`unary`\u003c/span\u003e.\n"
                },
                "certificateDomains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in \u003cspan pulumi-lang-nodejs=\"`certificateDomains`\" pulumi-lang-dotnet=\"`CertificateDomains`\" pulumi-lang-go=\"`certificateDomains`\" pulumi-lang-python=\"`certificate_domains`\" pulumi-lang-yaml=\"`certificateDomains`\" pulumi-lang-java=\"`certificateDomains`\"\u003e`certificateDomains`\u003c/span\u003e.\n"
                },
                "checkCertificateRevocation": {
                    "type": "boolean",
                    "description": "For SSL tests, whether or not the test should fail on revoked certificate in stapled OCSP.\n"
                },
                "destinationService": {
                    "type": "string",
                    "description": "For Network Path tests, an optional label displayed for the destination host in the Network Path visualization.\n"
                },
                "disableAiaIntermediateFetching": {
                    "type": "boolean",
                    "description": "For SSL tests, whether or not the test should disable fetching intermediate certificates from AIA\n"
                },
                "dnsServer": {
                    "type": "string",
                    "description": "DNS server to use for DNS tests (`subtype = \"dns\"`).\n"
                },
                "dnsServerPort": {
                    "type": "string",
                    "description": "DNS server port to use for DNS tests.\n"
                },
                "e2eQueries": {
                    "type": "integer",
                    "description": "For Network Path tests, the number of packets sent to probe the destination to measure packet loss, latency, and jitter.\n"
                },
                "followRedirects": {
                    "type": "boolean",
                    "description": "Determines whether or not the API HTTP test should follow redirects.\n"
                },
                "form": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Form data to be sent when \u003cspan pulumi-lang-nodejs=\"`bodyType`\" pulumi-lang-dotnet=\"`BodyType`\" pulumi-lang-go=\"`bodyType`\" pulumi-lang-python=\"`body_type`\" pulumi-lang-yaml=\"`bodyType`\" pulumi-lang-java=\"`bodyType`\"\u003e`bodyType`\u003c/span\u003e is `multipart/form-data`.\n"
                },
                "host": {
                    "type": "string",
                    "description": "Host name to perform the test with.\n"
                },
                "httpVersion": {
                    "type": "string",
                    "description": "HTTP version to use for an HTTP request in an API test or step. Valid values are \u003cspan pulumi-lang-nodejs=\"`http1`\" pulumi-lang-dotnet=\"`Http1`\" pulumi-lang-go=\"`http1`\" pulumi-lang-python=\"`http1`\" pulumi-lang-yaml=\"`http1`\" pulumi-lang-java=\"`http1`\"\u003e`http1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`http2`\" pulumi-lang-dotnet=\"`Http2`\" pulumi-lang-go=\"`http2`\" pulumi-lang-python=\"`http2`\" pulumi-lang-yaml=\"`http2`\" pulumi-lang-java=\"`http2`\"\u003e`http2`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e. Defaults to `\"any\"`.\n"
                },
                "isMessageBase64Encoded": {
                    "type": "boolean",
                    "description": "For Websocket tests, whether the message is treated as a base64-encoded string in the server.\n"
                },
                "maxTtl": {
                    "type": "integer",
                    "description": "For Network Path tests, the maximum time-to-live (max number of hops) used in outgoing probe packets.\n"
                },
                "message": {
                    "type": "string",
                    "description": "For gRPC, UDP, and Websocket tests, message to send with the request.\n"
                },
                "method": {
                    "type": "string",
                    "description": "Either the HTTP method/verb to use or a gRPC method available on the service set in the \u003cspan pulumi-lang-nodejs=\"`service`\" pulumi-lang-dotnet=\"`Service`\" pulumi-lang-go=\"`service`\" pulumi-lang-python=\"`service`\" pulumi-lang-yaml=\"`service`\" pulumi-lang-java=\"`service`\"\u003e`service`\u003c/span\u003e field. Required if \u003cspan pulumi-lang-nodejs=\"`subtype`\" pulumi-lang-dotnet=\"`Subtype`\" pulumi-lang-go=\"`subtype`\" pulumi-lang-python=\"`subtype`\" pulumi-lang-yaml=\"`subtype`\" pulumi-lang-java=\"`subtype`\"\u003e`subtype`\u003c/span\u003e is `HTTP` or if \u003cspan pulumi-lang-nodejs=\"`subtype`\" pulumi-lang-dotnet=\"`Subtype`\" pulumi-lang-go=\"`subtype`\" pulumi-lang-python=\"`subtype`\" pulumi-lang-yaml=\"`subtype`\" pulumi-lang-java=\"`subtype`\"\u003e`subtype`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`grpc`\" pulumi-lang-dotnet=\"`Grpc`\" pulumi-lang-go=\"`grpc`\" pulumi-lang-python=\"`grpc`\" pulumi-lang-yaml=\"`grpc`\" pulumi-lang-java=\"`grpc`\"\u003e`grpc`\u003c/span\u003e and `callType` is \u003cspan pulumi-lang-nodejs=\"`unary`\" pulumi-lang-dotnet=\"`Unary`\" pulumi-lang-go=\"`unary`\" pulumi-lang-python=\"`unary`\" pulumi-lang-yaml=\"`unary`\" pulumi-lang-java=\"`unary`\"\u003e`unary`\u003c/span\u003e.\n"
                },
                "noSavingResponseBody": {
                    "type": "boolean",
                    "description": "Determines whether or not to save the response body.\n"
                },
                "numberOfPackets": {
                    "type": "integer",
                    "description": "Number of pings to use per test for ICMP tests (`subtype = \"icmp\"`) between 0 and 10.\n"
                },
                "persistCookies": {
                    "type": "boolean",
                    "description": "Persist cookies across redirects.\n"
                },
                "plainProtoFile": {
                    "type": "string",
                    "description": "The content of a proto file as a string.\n"
                },
                "port": {
                    "type": "string",
                    "description": "Port to use when performing the test.\n"
                },
                "protoJsonDescriptor": {
                    "type": "string",
                    "description": "A protobuf JSON descriptor. **Deprecated.** Use \u003cspan pulumi-lang-nodejs=\"`plainProtoFile`\" pulumi-lang-dotnet=\"`PlainProtoFile`\" pulumi-lang-go=\"`plainProtoFile`\" pulumi-lang-python=\"`plain_proto_file`\" pulumi-lang-yaml=\"`plainProtoFile`\" pulumi-lang-java=\"`plainProtoFile`\"\u003e`plainProtoFile`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`plainProtoFile`\" pulumi-lang-dotnet=\"`PlainProtoFile`\" pulumi-lang-go=\"`plainProtoFile`\" pulumi-lang-python=\"`plain_proto_file`\" pulumi-lang-yaml=\"`plainProtoFile`\" pulumi-lang-java=\"`plainProtoFile`\"\u003e`plainProtoFile`\u003c/span\u003e instead."
                },
                "servername": {
                    "type": "string",
                    "description": "For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The gRPC service on which you want to perform the gRPC call.\n"
                },
                "shouldTrackHops": {
                    "type": "boolean",
                    "description": "This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (`subtype = \"icmp\"`).\n"
                },
                "sourceService": {
                    "type": "string",
                    "description": "For Network Path tests, an optional label displayed for the source host in the Network Path visualization\n"
                },
                "tcpMethod": {
                    "type": "string",
                    "description": "For TCP Network Path tests, the TCP traceroute strategy.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "Timeout in seconds for the test.\n"
                },
                "tracerouteQueries": {
                    "type": "integer",
                    "description": "For Network Path tests, the number of traceroute path tracings.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL to send the request to.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestApiStepRequestFile:SyntheticsTestApiStepRequestFile": {
            "properties": {
                "bucketKey": {
                    "type": "string",
                    "description": "Bucket key of the file.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Content of the file.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "Encoding of the file content. Must be \u003cspan pulumi-lang-nodejs=\"`base64`\" pulumi-lang-dotnet=\"`Base64`\" pulumi-lang-go=\"`base64`\" pulumi-lang-python=\"`base64`\" pulumi-lang-yaml=\"`base64`\" pulumi-lang-java=\"`base64`\"\u003e`base64`\u003c/span\u003e when content contains base64-encoded data.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the file.\n"
                },
                "originalFileName": {
                    "type": "string",
                    "description": "Original name of the file.\n"
                },
                "size": {
                    "type": "integer",
                    "description": "Size of the file.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the file.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "size",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bucketKey",
                        "name",
                        "size",
                        "type"
                    ]
                }
            }
        },
        "datadog:index/SyntheticsTestApiStepRequestProxy:SyntheticsTestApiStepRequestProxy": {
            "properties": {
                "headers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Header name and value map.\n"
                },
                "url": {
                    "type": "string",
                    "description": "URL of the proxy to perform the test.\n"
                }
            },
            "type": "object",
            "required": [
                "url"
            ]
        },
        "datadog:index/SyntheticsTestApiStepRetry:SyntheticsTestApiStepRetry": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "Number of retries needed to consider a location as failed before sending a notification alert. Maximum value: \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e for \u003cspan pulumi-lang-nodejs=\"`api`\" pulumi-lang-dotnet=\"`Api`\" pulumi-lang-go=\"`api`\" pulumi-lang-python=\"`api`\" pulumi-lang-yaml=\"`api`\" pulumi-lang-java=\"`api`\"\u003e`api`\u003c/span\u003e tests, \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e for \u003cspan pulumi-lang-nodejs=\"`browser`\" pulumi-lang-dotnet=\"`Browser`\" pulumi-lang-go=\"`browser`\" pulumi-lang-python=\"`browser`\" pulumi-lang-yaml=\"`browser`\" pulumi-lang-java=\"`browser`\"\u003e`browser`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`mobile`\" pulumi-lang-dotnet=\"`Mobile`\" pulumi-lang-go=\"`mobile`\" pulumi-lang-python=\"`mobile`\" pulumi-lang-yaml=\"`mobile`\" pulumi-lang-java=\"`mobile`\"\u003e`mobile`\u003c/span\u003e tests. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Interval between a failed test and the next retry in milliseconds. Maximum value: \u003cspan pulumi-lang-nodejs=\"`5000`\" pulumi-lang-dotnet=\"`5000`\" pulumi-lang-go=\"`5000`\" pulumi-lang-python=\"`5000`\" pulumi-lang-yaml=\"`5000`\" pulumi-lang-java=\"`5000`\"\u003e`5000`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestAssertion:SyntheticsTestAssertion": {
            "properties": {
                "code": {
                    "type": "string",
                    "description": "If assertion type is \u003cspan pulumi-lang-nodejs=\"`javascript`\" pulumi-lang-dotnet=\"`Javascript`\" pulumi-lang-go=\"`javascript`\" pulumi-lang-python=\"`javascript`\" pulumi-lang-yaml=\"`javascript`\" pulumi-lang-java=\"`javascript`\"\u003e`javascript`\u003c/span\u003e, this is the JavaScript code that performs the assertions.\n"
                },
                "operator": {
                    "type": "string",
                    "description": "Assertion operator. **Note:** Only some combinations of \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e are valid. Refer to `config.assertions` in the [Datadog API reference](https://docs.datadoghq.com/api/latest/synthetics/#create-an-api-test). Valid values are \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, `doesNotContain`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `isNot`, `lessThan`, `lessThanOrEqual`, `moreThan`, `moreThanOrEqual`, \u003cspan pulumi-lang-nodejs=\"`matches`\" pulumi-lang-dotnet=\"`Matches`\" pulumi-lang-go=\"`matches`\" pulumi-lang-python=\"`matches`\" pulumi-lang-yaml=\"`matches`\" pulumi-lang-java=\"`matches`\"\u003e`matches`\u003c/span\u003e, `doesNotMatch`, \u003cspan pulumi-lang-nodejs=\"`validates`\" pulumi-lang-dotnet=\"`Validates`\" pulumi-lang-go=\"`validates`\" pulumi-lang-python=\"`validates`\" pulumi-lang-yaml=\"`validates`\" pulumi-lang-java=\"`validates`\"\u003e`validates`\u003c/span\u003e, `isInMoreThan`, `isInLessThan`, `doesNotExist`, `isUndefined`, `validatesJSONPath`, `validatesJSONSchema`, `validatesXPath`, \u003cspan pulumi-lang-nodejs=\"`md5`\" pulumi-lang-dotnet=\"`Md5`\" pulumi-lang-go=\"`md5`\" pulumi-lang-python=\"`md5`\" pulumi-lang-yaml=\"`md5`\" pulumi-lang-java=\"`md5`\"\u003e`md5`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sha1`\" pulumi-lang-dotnet=\"`Sha1`\" pulumi-lang-go=\"`sha1`\" pulumi-lang-python=\"`sha1`\" pulumi-lang-yaml=\"`sha1`\" pulumi-lang-java=\"`sha1`\"\u003e`sha1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`sha256`\" pulumi-lang-dotnet=\"`Sha256`\" pulumi-lang-go=\"`sha256`\" pulumi-lang-python=\"`sha256`\" pulumi-lang-yaml=\"`sha256`\" pulumi-lang-java=\"`sha256`\"\u003e`sha256`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `isNot`, `lessThan`, `lessThanOrEqual`, `moreThan`, `moreThanOrEqual`.\n"
                },
                "property": {
                    "type": "string",
                    "description": "If assertion type is \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e or `grpcMetadata`, this is the header name. For other assertion types, this is an aggregation property: \u003cspan pulumi-lang-nodejs=\"`avg`\" pulumi-lang-dotnet=\"`Avg`\" pulumi-lang-go=\"`avg`\" pulumi-lang-python=\"`avg`\" pulumi-lang-yaml=\"`avg`\" pulumi-lang-java=\"`avg`\"\u003e`avg`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`min`\" pulumi-lang-dotnet=\"`Min`\" pulumi-lang-go=\"`min`\" pulumi-lang-python=\"`min`\" pulumi-lang-yaml=\"`min`\" pulumi-lang-java=\"`min`\"\u003e`min`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`stddev`\" pulumi-lang-dotnet=\"`Stddev`\" pulumi-lang-go=\"`stddev`\" pulumi-lang-python=\"`stddev`\" pulumi-lang-yaml=\"`stddev`\" pulumi-lang-java=\"`stddev`\"\u003e`stddev`\u003c/span\u003e.\n"
                },
                "target": {
                    "type": "string",
                    "description": "Expected value. **Note:** Depends on the assertion type. Refer to `config.assertions` in the [Datadog API reference](https://docs.datadoghq.com/api/latest/synthetics/#create-an-api-test).\n"
                },
                "targetjsonpath": {
                    "$ref": "#/types/datadog:index/SyntheticsTestAssertionTargetjsonpath:SyntheticsTestAssertionTargetjsonpath",
                    "description": "Expected structure if \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e is `validatesJSONPath`. Exactly one nested block is allowed with the structure below.\n"
                },
                "targetjsonschema": {
                    "$ref": "#/types/datadog:index/SyntheticsTestAssertionTargetjsonschema:SyntheticsTestAssertionTargetjsonschema",
                    "description": "Expected structure if \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e is `validatesJSONSchema`. Exactly one nested block is allowed with the structure below.\n"
                },
                "targetxpath": {
                    "$ref": "#/types/datadog:index/SyntheticsTestAssertionTargetxpath:SyntheticsTestAssertionTargetxpath",
                    "description": "Expected structure if \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e is `validatesXPath`. Exactly one nested block is allowed with the structure below.\n"
                },
                "timingsScope": {
                    "type": "string",
                    "description": "Timings scope for response time assertions. Valid values are \u003cspan pulumi-lang-nodejs=\"`all`\" pulumi-lang-dotnet=\"`All`\" pulumi-lang-go=\"`all`\" pulumi-lang-python=\"`all`\" pulumi-lang-yaml=\"`all`\" pulumi-lang-java=\"`all`\"\u003e`all`\u003c/span\u003e, `withoutDNS`.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of assertion. **Note:** Only some combinations of \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`operator`\" pulumi-lang-dotnet=\"`Operator`\" pulumi-lang-go=\"`operator`\" pulumi-lang-python=\"`operator`\" pulumi-lang-yaml=\"`operator`\" pulumi-lang-java=\"`operator`\"\u003e`operator`\u003c/span\u003e are valid. For API tests, refer to `config.assertions` in the [Datadog API reference](https://docs.datadoghq.com/api/latest/synthetics/#create-an-api-test). For Network Path tests, refer to `config.assertions` in the [Datadog API reference](https://docs.datadoghq.com/api/latest/synthetics/#create-a-network-path-test). Valid values are \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e, `statusCode`, \u003cspan pulumi-lang-nodejs=\"`certificate`\" pulumi-lang-dotnet=\"`Certificate`\" pulumi-lang-go=\"`certificate`\" pulumi-lang-python=\"`certificate`\" pulumi-lang-yaml=\"`certificate`\" pulumi-lang-java=\"`certificate`\"\u003e`certificate`\u003c/span\u003e, `responseTime`, \u003cspan pulumi-lang-nodejs=\"`property`\" pulumi-lang-dotnet=\"`Property`\" pulumi-lang-go=\"`property`\" pulumi-lang-python=\"`property`\" pulumi-lang-yaml=\"`property`\" pulumi-lang-java=\"`property`\"\u003e`property`\u003c/span\u003e, `recordEvery`, `recordSome`, `tlsVersion`, `minTlsVersion`, \u003cspan pulumi-lang-nodejs=\"`latency`\" pulumi-lang-dotnet=\"`Latency`\" pulumi-lang-go=\"`latency`\" pulumi-lang-python=\"`latency`\" pulumi-lang-yaml=\"`latency`\" pulumi-lang-java=\"`latency`\"\u003e`latency`\u003c/span\u003e, `packetLossPercentage`, `packetsReceived`, `networkHop`, `receivedMessage`, `grpcHealthcheckStatus`, `grpcMetadata`, `grpcProto`, \u003cspan pulumi-lang-nodejs=\"`connection`\" pulumi-lang-dotnet=\"`Connection`\" pulumi-lang-go=\"`connection`\" pulumi-lang-python=\"`connection`\" pulumi-lang-yaml=\"`connection`\" pulumi-lang-java=\"`connection`\"\u003e`connection`\u003c/span\u003e, `multiNetworkHop`, \u003cspan pulumi-lang-nodejs=\"`jitter`\" pulumi-lang-dotnet=\"`Jitter`\" pulumi-lang-go=\"`jitter`\" pulumi-lang-python=\"`jitter`\" pulumi-lang-yaml=\"`jitter`\" pulumi-lang-java=\"`jitter`\"\u003e`jitter`\u003c/span\u003e, `bodyHash`, \u003cspan pulumi-lang-nodejs=\"`javascript`\" pulumi-lang-dotnet=\"`Javascript`\" pulumi-lang-go=\"`javascript`\" pulumi-lang-python=\"`javascript`\" pulumi-lang-yaml=\"`javascript`\" pulumi-lang-java=\"`javascript`\"\u003e`javascript`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ]
        },
        "datadog:index/SyntheticsTestAssertionTargetjsonpath:SyntheticsTestAssertionTargetjsonpath": {
            "properties": {
                "elementsoperator": {
                    "type": "string",
                    "description": "The element from the list of results to assert on. Select from `firstElementMatches` (the first element in the list), `everyElementMatches` (every element in the list), `atLeastOneElementMatches` (at least one element in the list), or `serializationMatches` (the serialized value of the list). Defaults to `\"firstElementMatches\"`.\n"
                },
                "jsonpath": {
                    "type": "string",
                    "description": "The JSON path to assert.\n"
                },
                "operator": {
                    "type": "string",
                    "description": "The specific operator to use on the path.\n"
                },
                "targetvalue": {
                    "type": "string",
                    "description": "Expected matching value.\n"
                }
            },
            "type": "object",
            "required": [
                "jsonpath",
                "operator"
            ]
        },
        "datadog:index/SyntheticsTestAssertionTargetjsonschema:SyntheticsTestAssertionTargetjsonschema": {
            "properties": {
                "jsonschema": {
                    "type": "string",
                    "description": "The JSON Schema to validate the body against.\n"
                },
                "metaschema": {
                    "type": "string",
                    "description": "The meta schema to use for the JSON Schema. Defaults to `\"draft-07\"`.\n"
                }
            },
            "type": "object",
            "required": [
                "jsonschema"
            ]
        },
        "datadog:index/SyntheticsTestAssertionTargetxpath:SyntheticsTestAssertionTargetxpath": {
            "properties": {
                "operator": {
                    "type": "string",
                    "description": "The specific operator to use on the path.\n"
                },
                "targetvalue": {
                    "type": "string",
                    "description": "Expected matching value.\n"
                },
                "xpath": {
                    "type": "string",
                    "description": "The xpath to assert.\n"
                }
            },
            "type": "object",
            "required": [
                "operator",
                "xpath"
            ]
        },
        "datadog:index/SyntheticsTestBrowserStep:SyntheticsTestBrowserStep": {
            "properties": {
                "allowFailure": {
                    "type": "boolean",
                    "description": "Determines if the step should be allowed to fail.\n"
                },
                "alwaysExecute": {
                    "type": "boolean",
                    "description": "Determines whether or not to always execute this step even if the previous step failed or was skipped.\n"
                },
                "exitIfSucceed": {
                    "type": "boolean",
                    "description": "Determines whether or not to exit the test if the step succeeds.\n"
                },
                "forceElementUpdate": {
                    "type": "boolean",
                    "description": "Force update of the \"element\" parameter for the step\n"
                },
                "isCritical": {
                    "type": "boolean",
                    "description": "Determines whether or not to consider the entire test as failed if this step fails. Can be used only if \u003cspan pulumi-lang-nodejs=\"`allowFailure`\" pulumi-lang-dotnet=\"`AllowFailure`\" pulumi-lang-go=\"`allowFailure`\" pulumi-lang-python=\"`allow_failure`\" pulumi-lang-yaml=\"`allowFailure`\" pulumi-lang-java=\"`allowFailure`\"\u003e`allowFailure`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "localKey": {
                    "type": "string",
                    "description": "A unique identifier used to track steps after reordering.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the step.\n"
                },
                "noScreenshot": {
                    "type": "boolean",
                    "description": "Prevents saving screenshots of the step.\n"
                },
                "params": {
                    "$ref": "#/types/datadog:index/SyntheticsTestBrowserStepParams:SyntheticsTestBrowserStepParams",
                    "description": "Parameters for the step.\n"
                },
                "publicId": {
                    "type": "string",
                    "description": "The identifier of the step on the backend.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "Used to override the default timeout of a step.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the step. Valid values are `assertCurrentUrl`, `assertElementAttribute`, `assertElementContent`, `assertElementPresent`, `assertEmail`, `assertFileDownload`, `assertFromJavascript`, `assertPageContains`, `assertPageLacks`, `assertRequests`, \u003cspan pulumi-lang-nodejs=\"`click`\" pulumi-lang-dotnet=\"`Click`\" pulumi-lang-go=\"`click`\" pulumi-lang-python=\"`click`\" pulumi-lang-yaml=\"`click`\" pulumi-lang-java=\"`click`\"\u003e`click`\u003c/span\u003e, `extractFromJavascript`, `extractFromEmailBody`, `extractVariable`, `goToEmailLink`, `goToUrl`, `goToUrlAndMeasureTti`, \u003cspan pulumi-lang-nodejs=\"`hover`\" pulumi-lang-dotnet=\"`Hover`\" pulumi-lang-go=\"`hover`\" pulumi-lang-python=\"`hover`\" pulumi-lang-yaml=\"`hover`\" pulumi-lang-java=\"`hover`\"\u003e`hover`\u003c/span\u003e, `playSubTest`, `pressKey`, \u003cspan pulumi-lang-nodejs=\"`refresh`\" pulumi-lang-dotnet=\"`Refresh`\" pulumi-lang-go=\"`refresh`\" pulumi-lang-python=\"`refresh`\" pulumi-lang-yaml=\"`refresh`\" pulumi-lang-java=\"`refresh`\"\u003e`refresh`\u003c/span\u003e, `runApiTest`, \u003cspan pulumi-lang-nodejs=\"`scroll`\" pulumi-lang-dotnet=\"`Scroll`\" pulumi-lang-go=\"`scroll`\" pulumi-lang-python=\"`scroll`\" pulumi-lang-yaml=\"`scroll`\" pulumi-lang-java=\"`scroll`\"\u003e`scroll`\u003c/span\u003e, `selectOption`, `typeText`, `uploadFiles`, \u003cspan pulumi-lang-nodejs=\"`wait`\" pulumi-lang-dotnet=\"`Wait`\" pulumi-lang-go=\"`wait`\" pulumi-lang-python=\"`wait`\" pulumi-lang-yaml=\"`wait`\" pulumi-lang-java=\"`wait`\"\u003e`wait`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "params",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "name",
                        "params",
                        "publicId",
                        "type"
                    ]
                }
            }
        },
        "datadog:index/SyntheticsTestBrowserStepParams:SyntheticsTestBrowserStepParams": {
            "properties": {
                "appendToContent": {
                    "type": "boolean",
                    "description": "Whether to append the \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e to existing text input content for a \"typeText\" step. By default, content is cleared before text input.\n"
                },
                "attribute": {
                    "type": "string",
                    "description": "Name of the attribute to use for an \"assert attribute\" step.\n"
                },
                "check": {
                    "type": "string",
                    "description": "Check type to use for an assertion step. Valid values are \u003cspan pulumi-lang-nodejs=\"`equals`\" pulumi-lang-dotnet=\"`Equals`\" pulumi-lang-go=\"`equals`\" pulumi-lang-python=\"`equals`\" pulumi-lang-yaml=\"`equals`\" pulumi-lang-java=\"`equals`\"\u003e`equals`\u003c/span\u003e, `notEquals`, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, `notContains`, `startsWith`, `notStartsWith`, \u003cspan pulumi-lang-nodejs=\"`greater`\" pulumi-lang-dotnet=\"`Greater`\" pulumi-lang-go=\"`greater`\" pulumi-lang-python=\"`greater`\" pulumi-lang-yaml=\"`greater`\" pulumi-lang-java=\"`greater`\"\u003e`greater`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lower`\" pulumi-lang-dotnet=\"`Lower`\" pulumi-lang-go=\"`lower`\" pulumi-lang-python=\"`lower`\" pulumi-lang-yaml=\"`lower`\" pulumi-lang-java=\"`lower`\"\u003e`lower`\u003c/span\u003e, `greaterEquals`, `lowerEquals`, `matchRegex`, \u003cspan pulumi-lang-nodejs=\"`between`\" pulumi-lang-dotnet=\"`Between`\" pulumi-lang-go=\"`between`\" pulumi-lang-python=\"`between`\" pulumi-lang-yaml=\"`between`\" pulumi-lang-java=\"`between`\"\u003e`between`\u003c/span\u003e, `isEmpty`, `notIsEmpty`.\n"
                },
                "clickType": {
                    "type": "string",
                    "description": "Type of click to use for a \"click\" step.\n"
                },
                "clickWithJavascript": {
                    "type": "boolean",
                    "description": "Whether to use `element.click()` for a \"click\" step. This is a more reliable way to interact with elements but does not emulate a real user interaction.\n"
                },
                "code": {
                    "type": "string",
                    "description": "Javascript code to use for the step.\n"
                },
                "delay": {
                    "type": "integer",
                    "description": "Delay between each key stroke for a \"type test\" step.\n"
                },
                "element": {
                    "type": "string",
                    "description": "Element to use for the step, JSON encoded string. Refer to the examples for a usage example showing the schema.\n"
                },
                "elementUserLocator": {
                    "$ref": "#/types/datadog:index/SyntheticsTestBrowserStepParamsElementUserLocator:SyntheticsTestBrowserStepParamsElementUserLocator",
                    "description": "Custom user selector to use for the step.\n"
                },
                "email": {
                    "type": "string",
                    "description": "Details of the email for an \"assert email\" step, JSON encoded string.\n"
                },
                "file": {
                    "type": "string",
                    "description": "JSON encoded string used for an \"assert download\" step. Refer to the examples for a usage example showing the schema.\n"
                },
                "files": {
                    "type": "string",
                    "description": "Details of the files for an \"upload files\" step, JSON encoded string. Refer to the examples for a usage example showing the schema.\n"
                },
                "modifiers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Modifier to use for a \"press key\" step.\n"
                },
                "pattern": {
                    "$ref": "#/types/datadog:index/SyntheticsTestBrowserStepParamsPattern:SyntheticsTestBrowserStepParamsPattern",
                    "description": "Pattern to use for an \"extractFromEmailBody\" step.\n"
                },
                "playingTabId": {
                    "type": "string",
                    "description": "ID of the tab to play the subtest.\n"
                },
                "request": {
                    "type": "string",
                    "description": "Request for an API step.\n"
                },
                "requests": {
                    "type": "string",
                    "description": "Details of the requests for an \"assert request\" step, JSON encoded string. Refer to the examples for a usage example showing the schema.\n"
                },
                "subtestPublicId": {
                    "type": "string",
                    "description": "ID of the Synthetics test to use as subtest.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value of the step.\n"
                },
                "variable": {
                    "$ref": "#/types/datadog:index/SyntheticsTestBrowserStepParamsVariable:SyntheticsTestBrowserStepParamsVariable",
                    "description": "Details of the variable to extract.\n"
                },
                "withClick": {
                    "type": "boolean",
                    "description": "For \"file upload\" steps.\n"
                },
                "x": {
                    "type": "integer",
                    "description": "X coordinates for a \"scroll step\".\n"
                },
                "y": {
                    "type": "integer",
                    "description": "Y coordinates for a \"scroll step\".\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestBrowserStepParamsElementUserLocator:SyntheticsTestBrowserStepParamsElementUserLocator": {
            "properties": {
                "failTestOnCannotLocate": {
                    "type": "boolean",
                    "description": "Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "value": {
                    "$ref": "#/types/datadog:index/SyntheticsTestBrowserStepParamsElementUserLocatorValue:SyntheticsTestBrowserStepParamsElementUserLocatorValue"
                }
            },
            "type": "object",
            "required": [
                "value"
            ]
        },
        "datadog:index/SyntheticsTestBrowserStepParamsElementUserLocatorValue:SyntheticsTestBrowserStepParamsElementUserLocatorValue": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Defaults to `\"css\"`.\n"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "value"
            ]
        },
        "datadog:index/SyntheticsTestBrowserStepParamsPattern:SyntheticsTestBrowserStepParamsPattern": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Type of pattern to use for the step. Valid values are \u003cspan pulumi-lang-nodejs=\"`regex`\" pulumi-lang-dotnet=\"`Regex`\" pulumi-lang-go=\"`regex`\" pulumi-lang-python=\"`regex`\" pulumi-lang-yaml=\"`regex`\" pulumi-lang-java=\"`regex`\"\u003e`regex`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`xPath`\" pulumi-lang-dotnet=\"`XPath`\" pulumi-lang-go=\"`xPath`\" pulumi-lang-python=\"`x_path`\" pulumi-lang-yaml=\"`xPath`\" pulumi-lang-java=\"`xPath`\"\u003e`xPath`\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Pattern to use for the step.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestBrowserStepParamsVariable:SyntheticsTestBrowserStepParamsVariable": {
            "properties": {
                "example": {
                    "type": "string",
                    "description": "Example of the extracted variable. Defaults to `\"\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the extracted variable.\n"
                },
                "secure": {
                    "type": "boolean",
                    "description": "Whether the value of this variable will be obfuscated in test results. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestBrowserVariable:SyntheticsTestBrowserVariable": {
            "properties": {
                "example": {
                    "type": "string",
                    "description": "Example for the variable. Defaults to `\"\"`.\n"
                },
                "id": {
                    "type": "string",
                    "description": "ID of the global variable to use. This is actually only used (and required) in the case of using a variable of type \u003cspan pulumi-lang-nodejs=\"`global`\" pulumi-lang-dotnet=\"`Global`\" pulumi-lang-go=\"`global`\" pulumi-lang-python=\"`global`\" pulumi-lang-yaml=\"`global`\" pulumi-lang-java=\"`global`\"\u003e`global`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the variable.\n"
                },
                "pattern": {
                    "type": "string",
                    "description": "Pattern of the variable. Defaults to `\"\"`.\n"
                },
                "secure": {
                    "type": "boolean",
                    "description": "Determines whether or not the browser test variable is obfuscated. Can only be used with a browser variable of type \u003cspan pulumi-lang-nodejs=\"`text`\" pulumi-lang-dotnet=\"`Text`\" pulumi-lang-go=\"`text`\" pulumi-lang-python=\"`text`\" pulumi-lang-yaml=\"`text`\" pulumi-lang-java=\"`text`\"\u003e`text`\u003c/span\u003e\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of browser test variable. Valid values are \u003cspan pulumi-lang-nodejs=\"`element`\" pulumi-lang-dotnet=\"`Element`\" pulumi-lang-go=\"`element`\" pulumi-lang-python=\"`element`\" pulumi-lang-yaml=\"`element`\" pulumi-lang-java=\"`element`\"\u003e`element`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`email`\" pulumi-lang-dotnet=\"`Email`\" pulumi-lang-go=\"`email`\" pulumi-lang-python=\"`email`\" pulumi-lang-yaml=\"`email`\" pulumi-lang-java=\"`email`\"\u003e`email`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`global`\" pulumi-lang-dotnet=\"`Global`\" pulumi-lang-go=\"`global`\" pulumi-lang-python=\"`global`\" pulumi-lang-yaml=\"`global`\" pulumi-lang-java=\"`global`\"\u003e`global`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`text`\" pulumi-lang-dotnet=\"`Text`\" pulumi-lang-go=\"`text`\" pulumi-lang-python=\"`text`\" pulumi-lang-yaml=\"`text`\" pulumi-lang-java=\"`text`\"\u003e`text`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ]
        },
        "datadog:index/SyntheticsTestConfigVariable:SyntheticsTestConfigVariable": {
            "properties": {
                "example": {
                    "type": "string",
                    "description": "Example for the variable. This value is not returned by the API when `secure = true`. Avoid drift by only making updates to this value from within Terraform.\n"
                },
                "id": {
                    "type": "string",
                    "description": "When type = \u003cspan pulumi-lang-nodejs=\"`global`\" pulumi-lang-dotnet=\"`Global`\" pulumi-lang-go=\"`global`\" pulumi-lang-python=\"`global`\" pulumi-lang-yaml=\"`global`\" pulumi-lang-java=\"`global`\"\u003e`global`\u003c/span\u003e, ID of the global variable to use.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the variable.\n"
                },
                "pattern": {
                    "type": "string",
                    "description": "Pattern of the variable. This value is not returned by the API when `secure = true`. Avoid drift by only making updates to this value from within Terraform.\n"
                },
                "secure": {
                    "type": "boolean",
                    "description": "Whether the value of this variable will be obfuscated in test results. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of test configuration variable. Valid values are \u003cspan pulumi-lang-nodejs=\"`global`\" pulumi-lang-dotnet=\"`Global`\" pulumi-lang-go=\"`global`\" pulumi-lang-python=\"`global`\" pulumi-lang-yaml=\"`global`\" pulumi-lang-java=\"`global`\"\u003e`global`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`text`\" pulumi-lang-dotnet=\"`Text`\" pulumi-lang-go=\"`text`\" pulumi-lang-python=\"`text`\" pulumi-lang-yaml=\"`text`\" pulumi-lang-java=\"`text`\"\u003e`text`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`email`\" pulumi-lang-dotnet=\"`Email`\" pulumi-lang-go=\"`email`\" pulumi-lang-python=\"`email`\" pulumi-lang-yaml=\"`email`\" pulumi-lang-java=\"`email`\"\u003e`email`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ]
        },
        "datadog:index/SyntheticsTestMobileOptionsList:SyntheticsTestMobileOptionsList": {
            "properties": {
                "allowApplicationCrash": {
                    "type": "boolean"
                },
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SyntheticsTestMobileOptionsListBinding:SyntheticsTestMobileOptionsListBinding"
                    },
                    "description": "Restriction policy bindings for the Synthetic mobile test. Should not be used in parallel with a \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e resource\n"
                },
                "ci": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileOptionsListCi:SyntheticsTestMobileOptionsListCi",
                    "description": "CI/CD options for a Synthetic test.\n"
                },
                "defaultStepTimeout": {
                    "type": "integer"
                },
                "deviceIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "disableAutoAcceptAlert": {
                    "type": "boolean"
                },
                "minFailureDuration": {
                    "type": "integer",
                    "description": "Minimum amount of time in failure required to trigger an alert (in seconds). Default is \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "mobileApplication": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileOptionsListMobileApplication:SyntheticsTestMobileOptionsListMobileApplication"
                },
                "monitorName": {
                    "type": "string",
                    "description": "The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.\n"
                },
                "monitorOptions": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileOptionsListMonitorOptions:SyntheticsTestMobileOptionsListMonitorOptions"
                },
                "monitorPriority": {
                    "type": "integer"
                },
                "noScreenshot": {
                    "type": "boolean",
                    "description": "Prevents saving screenshots of the steps.\n"
                },
                "restrictedRoles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of role identifiers pulled from the Roles API to restrict read and write access. **Deprecated.** This field is no longer supported by the Datadog API. Please use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "This field is no longer supported by the Datadog API. Please use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e instead."
                },
                "retry": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileOptionsListRetry:SyntheticsTestMobileOptionsListRetry"
                },
                "scheduling": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileOptionsListScheduling:SyntheticsTestMobileOptionsListScheduling",
                    "description": "Object containing timeframes and timezone used for advanced scheduling.\n"
                },
                "tickEvery": {
                    "type": "integer",
                    "description": "How often the test should run (in seconds). Valid range is `300-604800` for mobile tests.\n"
                },
                "verbosity": {
                    "type": "integer"
                }
            },
            "type": "object",
            "required": [
                "deviceIds",
                "mobileApplication",
                "tickEvery"
            ]
        },
        "datadog:index/SyntheticsTestMobileOptionsListBinding:SyntheticsTestMobileOptionsListBinding": {
            "properties": {
                "principals": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "relation": {
                    "type": "string",
                    "description": "Valid values are \u003cspan pulumi-lang-nodejs=\"`editor`\" pulumi-lang-dotnet=\"`Editor`\" pulumi-lang-go=\"`editor`\" pulumi-lang-python=\"`editor`\" pulumi-lang-yaml=\"`editor`\" pulumi-lang-java=\"`editor`\"\u003e`editor`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`viewer`\" pulumi-lang-dotnet=\"`Viewer`\" pulumi-lang-go=\"`viewer`\" pulumi-lang-python=\"`viewer`\" pulumi-lang-yaml=\"`viewer`\" pulumi-lang-java=\"`viewer`\"\u003e`viewer`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileOptionsListCi:SyntheticsTestMobileOptionsListCi": {
            "properties": {
                "executionRule": {
                    "type": "string",
                    "description": "Execution rule for a Synthetics test. Valid values are \u003cspan pulumi-lang-nodejs=\"`blocking`\" pulumi-lang-dotnet=\"`Blocking`\" pulumi-lang-go=\"`blocking`\" pulumi-lang-python=\"`blocking`\" pulumi-lang-yaml=\"`blocking`\" pulumi-lang-java=\"`blocking`\"\u003e`blocking`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`nonBlocking`\" pulumi-lang-dotnet=\"`NonBlocking`\" pulumi-lang-go=\"`nonBlocking`\" pulumi-lang-python=\"`non_blocking`\" pulumi-lang-yaml=\"`nonBlocking`\" pulumi-lang-java=\"`nonBlocking`\"\u003e`nonBlocking`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`skipped`\" pulumi-lang-dotnet=\"`Skipped`\" pulumi-lang-go=\"`skipped`\" pulumi-lang-python=\"`skipped`\" pulumi-lang-yaml=\"`skipped`\" pulumi-lang-java=\"`skipped`\"\u003e`skipped`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "executionRule"
            ]
        },
        "datadog:index/SyntheticsTestMobileOptionsListMobileApplication:SyntheticsTestMobileOptionsListMobileApplication": {
            "properties": {
                "applicationId": {
                    "type": "string"
                },
                "referenceId": {
                    "type": "string"
                },
                "referenceType": {
                    "type": "string",
                    "description": "Valid values are \u003cspan pulumi-lang-nodejs=\"`latest`\" pulumi-lang-dotnet=\"`Latest`\" pulumi-lang-go=\"`latest`\" pulumi-lang-python=\"`latest`\" pulumi-lang-yaml=\"`latest`\" pulumi-lang-java=\"`latest`\"\u003e`latest`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`version`\" pulumi-lang-dotnet=\"`Version`\" pulumi-lang-go=\"`version`\" pulumi-lang-python=\"`version`\" pulumi-lang-yaml=\"`version`\" pulumi-lang-java=\"`version`\"\u003e`version`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "applicationId",
                "referenceId",
                "referenceType"
            ]
        },
        "datadog:index/SyntheticsTestMobileOptionsListMonitorOptions:SyntheticsTestMobileOptionsListMonitorOptions": {
            "properties": {
                "escalationMessage": {
                    "type": "string",
                    "description": "A message to include with a re-notification.\n"
                },
                "notificationPresetName": {
                    "type": "string",
                    "description": "The name of the preset for the notification for the monitor. Valid values are \u003cspan pulumi-lang-nodejs=\"`showAll`\" pulumi-lang-dotnet=\"`ShowAll`\" pulumi-lang-go=\"`showAll`\" pulumi-lang-python=\"`show_all`\" pulumi-lang-yaml=\"`showAll`\" pulumi-lang-java=\"`showAll`\"\u003e`showAll`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideAll`\" pulumi-lang-dotnet=\"`HideAll`\" pulumi-lang-go=\"`hideAll`\" pulumi-lang-python=\"`hide_all`\" pulumi-lang-yaml=\"`hideAll`\" pulumi-lang-java=\"`hideAll`\"\u003e`hideAll`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideQuery`\" pulumi-lang-dotnet=\"`HideQuery`\" pulumi-lang-go=\"`hideQuery`\" pulumi-lang-python=\"`hide_query`\" pulumi-lang-yaml=\"`hideQuery`\" pulumi-lang-java=\"`hideQuery`\"\u003e`hideQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideHandles`\" pulumi-lang-dotnet=\"`HideHandles`\" pulumi-lang-go=\"`hideHandles`\" pulumi-lang-python=\"`hide_handles`\" pulumi-lang-yaml=\"`hideHandles`\" pulumi-lang-java=\"`hideHandles`\"\u003e`hideHandles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideQueryAndHandles`\" pulumi-lang-dotnet=\"`HideQueryAndHandles`\" pulumi-lang-go=\"`hideQueryAndHandles`\" pulumi-lang-python=\"`hide_query_and_handles`\" pulumi-lang-yaml=\"`hideQueryAndHandles`\" pulumi-lang-java=\"`hideQueryAndHandles`\"\u003e`hideQueryAndHandles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`showOnlySnapshot`\" pulumi-lang-dotnet=\"`ShowOnlySnapshot`\" pulumi-lang-go=\"`showOnlySnapshot`\" pulumi-lang-python=\"`show_only_snapshot`\" pulumi-lang-yaml=\"`showOnlySnapshot`\" pulumi-lang-java=\"`showOnlySnapshot`\"\u003e`showOnlySnapshot`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideHandlesAndFooter`\" pulumi-lang-dotnet=\"`HideHandlesAndFooter`\" pulumi-lang-go=\"`hideHandlesAndFooter`\" pulumi-lang-python=\"`hide_handles_and_footer`\" pulumi-lang-yaml=\"`hideHandlesAndFooter`\" pulumi-lang-java=\"`hideHandlesAndFooter`\"\u003e`hideHandlesAndFooter`\u003c/span\u003e.\n"
                },
                "renotifyInterval": {
                    "type": "integer",
                    "description": "Specify a renotification frequency in minutes. Values available by default are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10`\" pulumi-lang-dotnet=\"`10`\" pulumi-lang-go=\"`10`\" pulumi-lang-python=\"`10`\" pulumi-lang-yaml=\"`10`\" pulumi-lang-java=\"`10`\"\u003e`10`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`20`\" pulumi-lang-dotnet=\"`20`\" pulumi-lang-go=\"`20`\" pulumi-lang-python=\"`20`\" pulumi-lang-yaml=\"`20`\" pulumi-lang-java=\"`20`\"\u003e`20`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30`\" pulumi-lang-dotnet=\"`30`\" pulumi-lang-go=\"`30`\" pulumi-lang-python=\"`30`\" pulumi-lang-yaml=\"`30`\" pulumi-lang-java=\"`30`\"\u003e`30`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`40`\" pulumi-lang-dotnet=\"`40`\" pulumi-lang-go=\"`40`\" pulumi-lang-python=\"`40`\" pulumi-lang-yaml=\"`40`\" pulumi-lang-java=\"`40`\"\u003e`40`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`50`\" pulumi-lang-dotnet=\"`50`\" pulumi-lang-go=\"`50`\" pulumi-lang-python=\"`50`\" pulumi-lang-yaml=\"`50`\" pulumi-lang-java=\"`50`\"\u003e`50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`60`\" pulumi-lang-dotnet=\"`60`\" pulumi-lang-go=\"`60`\" pulumi-lang-python=\"`60`\" pulumi-lang-yaml=\"`60`\" pulumi-lang-java=\"`60`\"\u003e`60`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`90`\" pulumi-lang-dotnet=\"`90`\" pulumi-lang-go=\"`90`\" pulumi-lang-python=\"`90`\" pulumi-lang-yaml=\"`90`\" pulumi-lang-java=\"`90`\"\u003e`90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`120`\" pulumi-lang-dotnet=\"`120`\" pulumi-lang-go=\"`120`\" pulumi-lang-python=\"`120`\" pulumi-lang-yaml=\"`120`\" pulumi-lang-java=\"`120`\"\u003e`120`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`180`\" pulumi-lang-dotnet=\"`180`\" pulumi-lang-go=\"`180`\" pulumi-lang-python=\"`180`\" pulumi-lang-yaml=\"`180`\" pulumi-lang-java=\"`180`\"\u003e`180`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`240`\" pulumi-lang-dotnet=\"`240`\" pulumi-lang-go=\"`240`\" pulumi-lang-python=\"`240`\" pulumi-lang-yaml=\"`240`\" pulumi-lang-java=\"`240`\"\u003e`240`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`360`\" pulumi-lang-dotnet=\"`360`\" pulumi-lang-go=\"`360`\" pulumi-lang-python=\"`360`\" pulumi-lang-yaml=\"`360`\" pulumi-lang-java=\"`360`\"\u003e`360`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`720`\" pulumi-lang-dotnet=\"`720`\" pulumi-lang-go=\"`720`\" pulumi-lang-python=\"`720`\" pulumi-lang-yaml=\"`720`\" pulumi-lang-java=\"`720`\"\u003e`720`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1440`\" pulumi-lang-dotnet=\"`1440`\" pulumi-lang-go=\"`1440`\" pulumi-lang-python=\"`1440`\" pulumi-lang-yaml=\"`1440`\" pulumi-lang-java=\"`1440`\"\u003e`1440`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "renotifyOccurrences": {
                    "type": "integer",
                    "description": "The number of times a monitor renotifies. It can only be set if \u003cspan pulumi-lang-nodejs=\"`renotifyInterval`\" pulumi-lang-dotnet=\"`RenotifyInterval`\" pulumi-lang-go=\"`renotifyInterval`\" pulumi-lang-python=\"`renotify_interval`\" pulumi-lang-yaml=\"`renotifyInterval`\" pulumi-lang-java=\"`renotifyInterval`\"\u003e`renotifyInterval`\u003c/span\u003e is set.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileOptionsListRetry:SyntheticsTestMobileOptionsListRetry": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "Number of retries needed to consider a location as failed before sending a notification alert. Maximum value: \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e for \u003cspan pulumi-lang-nodejs=\"`api`\" pulumi-lang-dotnet=\"`Api`\" pulumi-lang-go=\"`api`\" pulumi-lang-python=\"`api`\" pulumi-lang-yaml=\"`api`\" pulumi-lang-java=\"`api`\"\u003e`api`\u003c/span\u003e tests, \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e for \u003cspan pulumi-lang-nodejs=\"`browser`\" pulumi-lang-dotnet=\"`Browser`\" pulumi-lang-go=\"`browser`\" pulumi-lang-python=\"`browser`\" pulumi-lang-yaml=\"`browser`\" pulumi-lang-java=\"`browser`\"\u003e`browser`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`mobile`\" pulumi-lang-dotnet=\"`Mobile`\" pulumi-lang-go=\"`mobile`\" pulumi-lang-python=\"`mobile`\" pulumi-lang-yaml=\"`mobile`\" pulumi-lang-java=\"`mobile`\"\u003e`mobile`\u003c/span\u003e tests. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Interval between a failed test and the next retry in milliseconds. Maximum value: \u003cspan pulumi-lang-nodejs=\"`5000`\" pulumi-lang-dotnet=\"`5000`\" pulumi-lang-go=\"`5000`\" pulumi-lang-python=\"`5000`\" pulumi-lang-yaml=\"`5000`\" pulumi-lang-java=\"`5000`\"\u003e`5000`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileOptionsListScheduling:SyntheticsTestMobileOptionsListScheduling": {
            "properties": {
                "timeframes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SyntheticsTestMobileOptionsListSchedulingTimeframe:SyntheticsTestMobileOptionsListSchedulingTimeframe"
                    },
                    "description": "Array containing objects describing the scheduling pattern to apply to each day.\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "Timezone in which the timeframe is based.\n"
                }
            },
            "type": "object",
            "required": [
                "timeframes",
                "timezone"
            ]
        },
        "datadog:index/SyntheticsTestMobileOptionsListSchedulingTimeframe:SyntheticsTestMobileOptionsListSchedulingTimeframe": {
            "properties": {
                "day": {
                    "type": "integer",
                    "description": "Number representing the day of the week\n"
                },
                "from": {
                    "type": "string",
                    "description": "The hour of the day on which scheduling starts.\n"
                },
                "to": {
                    "type": "string",
                    "description": "The hour of the day on which scheduling ends.\n"
                }
            },
            "type": "object",
            "required": [
                "day",
                "from",
                "to"
            ]
        },
        "datadog:index/SyntheticsTestMobileStep:SyntheticsTestMobileStep": {
            "properties": {
                "allowFailure": {
                    "type": "boolean",
                    "description": "A boolean set to allow this step to fail.\n"
                },
                "hasNewStepElement": {
                    "type": "boolean",
                    "description": "A boolean set to determine if the step has a new step element.\n"
                },
                "isCritical": {
                    "type": "boolean",
                    "description": "A boolean to use in addition to `allowFailure` to determine if the test should be marked as failed when the step fails.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the step.\n"
                },
                "noScreenshot": {
                    "type": "boolean",
                    "description": "A boolean set to not take a screenshot for the step.\n"
                },
                "params": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileStepParams:SyntheticsTestMobileStepParams",
                    "description": "Parameters for the step.\n"
                },
                "publicId": {
                    "type": "string",
                    "description": "The public ID of the step.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "The time before declaring a step failed.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of the step. Valid values are `assertElementContent`, `assertScreenContains`, `assertScreenLacks`, `doubleTap`, `extractVariable`, \u003cspan pulumi-lang-nodejs=\"`flick`\" pulumi-lang-dotnet=\"`Flick`\" pulumi-lang-go=\"`flick`\" pulumi-lang-python=\"`flick`\" pulumi-lang-yaml=\"`flick`\" pulumi-lang-java=\"`flick`\"\u003e`flick`\u003c/span\u003e, `openDeeplink`, `playSubTest`, `pressBack`, `restartApplication`, \u003cspan pulumi-lang-nodejs=\"`rotate`\" pulumi-lang-dotnet=\"`Rotate`\" pulumi-lang-go=\"`rotate`\" pulumi-lang-python=\"`rotate`\" pulumi-lang-yaml=\"`rotate`\" pulumi-lang-java=\"`rotate`\"\u003e`rotate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`scroll`\" pulumi-lang-dotnet=\"`Scroll`\" pulumi-lang-go=\"`scroll`\" pulumi-lang-python=\"`scroll`\" pulumi-lang-yaml=\"`scroll`\" pulumi-lang-java=\"`scroll`\"\u003e`scroll`\u003c/span\u003e, `scrollToElement`, \u003cspan pulumi-lang-nodejs=\"`tap`\" pulumi-lang-dotnet=\"`Tap`\" pulumi-lang-go=\"`tap`\" pulumi-lang-python=\"`tap`\" pulumi-lang-yaml=\"`tap`\" pulumi-lang-java=\"`tap`\"\u003e`tap`\u003c/span\u003e, `toggleWiFi`, `typeText`, \u003cspan pulumi-lang-nodejs=\"`wait`\" pulumi-lang-dotnet=\"`Wait`\" pulumi-lang-go=\"`wait`\" pulumi-lang-python=\"`wait`\" pulumi-lang-yaml=\"`wait`\" pulumi-lang-java=\"`wait`\"\u003e`wait`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "params",
                "type"
            ]
        },
        "datadog:index/SyntheticsTestMobileStepParams:SyntheticsTestMobileStepParams": {
            "properties": {
                "check": {
                    "type": "string",
                    "description": "Check type to use for an assertion step. Valid values are \u003cspan pulumi-lang-nodejs=\"`equals`\" pulumi-lang-dotnet=\"`Equals`\" pulumi-lang-go=\"`equals`\" pulumi-lang-python=\"`equals`\" pulumi-lang-yaml=\"`equals`\" pulumi-lang-java=\"`equals`\"\u003e`equals`\u003c/span\u003e, `notEquals`, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, `notContains`, `startsWith`, `notStartsWith`, \u003cspan pulumi-lang-nodejs=\"`greater`\" pulumi-lang-dotnet=\"`Greater`\" pulumi-lang-go=\"`greater`\" pulumi-lang-python=\"`greater`\" pulumi-lang-yaml=\"`greater`\" pulumi-lang-java=\"`greater`\"\u003e`greater`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lower`\" pulumi-lang-dotnet=\"`Lower`\" pulumi-lang-go=\"`lower`\" pulumi-lang-python=\"`lower`\" pulumi-lang-yaml=\"`lower`\" pulumi-lang-java=\"`lower`\"\u003e`lower`\u003c/span\u003e, `greaterEquals`, `lowerEquals`, `matchRegex`, \u003cspan pulumi-lang-nodejs=\"`between`\" pulumi-lang-dotnet=\"`Between`\" pulumi-lang-go=\"`between`\" pulumi-lang-python=\"`between`\" pulumi-lang-yaml=\"`between`\" pulumi-lang-java=\"`between`\"\u003e`between`\u003c/span\u003e, `isEmpty`, `notIsEmpty`.\n"
                },
                "delay": {
                    "type": "integer",
                    "description": "Delay between each key stroke for a \"type test\" step.\n"
                },
                "direction": {
                    "type": "string",
                    "description": "Valid values are \u003cspan pulumi-lang-nodejs=\"`up`\" pulumi-lang-dotnet=\"`Up`\" pulumi-lang-go=\"`up`\" pulumi-lang-python=\"`up`\" pulumi-lang-yaml=\"`up`\" pulumi-lang-java=\"`up`\"\u003e`up`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`down`\" pulumi-lang-dotnet=\"`Down`\" pulumi-lang-go=\"`down`\" pulumi-lang-python=\"`down`\" pulumi-lang-yaml=\"`down`\" pulumi-lang-java=\"`down`\"\u003e`down`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`left`\" pulumi-lang-dotnet=\"`Left`\" pulumi-lang-go=\"`left`\" pulumi-lang-python=\"`left`\" pulumi-lang-yaml=\"`left`\" pulumi-lang-java=\"`left`\"\u003e`left`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`right`\" pulumi-lang-dotnet=\"`Right`\" pulumi-lang-go=\"`right`\" pulumi-lang-python=\"`right`\" pulumi-lang-yaml=\"`right`\" pulumi-lang-java=\"`right`\"\u003e`right`\u003c/span\u003e.\n"
                },
                "element": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileStepParamsElement:SyntheticsTestMobileStepParamsElement",
                    "description": "Element to use for the step\n"
                },
                "enable": {
                    "type": "boolean"
                },
                "maxScrolls": {
                    "type": "integer"
                },
                "positions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SyntheticsTestMobileStepParamsPosition:SyntheticsTestMobileStepParamsPosition"
                    }
                },
                "subtestPublicId": {
                    "type": "string",
                    "description": "ID of the Synthetics test to use as subtest.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Value of the step.\n"
                },
                "variable": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileStepParamsVariable:SyntheticsTestMobileStepParamsVariable",
                    "description": "Details of the variable to extract.\n"
                },
                "withEnter": {
                    "type": "boolean"
                },
                "x": {
                    "type": "number",
                    "description": "X coordinates for a \"scroll step\".\n"
                },
                "y": {
                    "type": "number",
                    "description": "Y coordinates for a \"scroll step\".\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileStepParamsElement:SyntheticsTestMobileStepParamsElement": {
            "properties": {
                "context": {
                    "type": "string"
                },
                "contextType": {
                    "type": "string",
                    "description": "Valid values are \u003cspan pulumi-lang-nodejs=\"`native`\" pulumi-lang-dotnet=\"`Native`\" pulumi-lang-go=\"`native`\" pulumi-lang-python=\"`native`\" pulumi-lang-yaml=\"`native`\" pulumi-lang-java=\"`native`\"\u003e`native`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`web`\" pulumi-lang-dotnet=\"`Web`\" pulumi-lang-go=\"`web`\" pulumi-lang-python=\"`web`\" pulumi-lang-yaml=\"`web`\" pulumi-lang-java=\"`web`\"\u003e`web`\u003c/span\u003e.\n"
                },
                "elementDescription": {
                    "type": "string"
                },
                "multiLocator": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    }
                },
                "relativePosition": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileStepParamsElementRelativePosition:SyntheticsTestMobileStepParamsElementRelativePosition"
                },
                "textContent": {
                    "type": "string"
                },
                "userLocator": {
                    "$ref": "#/types/datadog:index/SyntheticsTestMobileStepParamsElementUserLocator:SyntheticsTestMobileStepParamsElementUserLocator"
                },
                "viewName": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileStepParamsElementRelativePosition:SyntheticsTestMobileStepParamsElementRelativePosition": {
            "properties": {
                "x": {
                    "type": "number"
                },
                "y": {
                    "type": "number"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileStepParamsElementUserLocator:SyntheticsTestMobileStepParamsElementUserLocator": {
            "properties": {
                "failTestOnCannotLocate": {
                    "type": "boolean"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SyntheticsTestMobileStepParamsElementUserLocatorValue:SyntheticsTestMobileStepParamsElementUserLocatorValue"
                    }
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileStepParamsElementUserLocatorValue:SyntheticsTestMobileStepParamsElementUserLocatorValue": {
            "properties": {
                "type": {
                    "type": "string",
                    "description": "Valid values are `accessibility-id`, \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e, `ios-predicate-string`, `ios-class-chain`, \u003cspan pulumi-lang-nodejs=\"`xpath`\" pulumi-lang-dotnet=\"`Xpath`\" pulumi-lang-go=\"`xpath`\" pulumi-lang-python=\"`xpath`\" pulumi-lang-yaml=\"`xpath`\" pulumi-lang-java=\"`xpath`\"\u003e`xpath`\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileStepParamsPosition:SyntheticsTestMobileStepParamsPosition": {
            "properties": {
                "x": {
                    "type": "number"
                },
                "y": {
                    "type": "number"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestMobileStepParamsVariable:SyntheticsTestMobileStepParamsVariable": {
            "properties": {
                "example": {
                    "type": "string",
                    "description": "Example of the extracted variable. Defaults to `\"\"`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the extracted variable.\n"
                }
            },
            "type": "object",
            "required": [
                "name"
            ]
        },
        "datadog:index/SyntheticsTestOptionsList:SyntheticsTestOptionsList": {
            "properties": {
                "acceptSelfSigned": {
                    "type": "boolean",
                    "description": "For SSL tests, whether or not the test should allow self signed certificates.\n"
                },
                "allowInsecure": {
                    "type": "boolean",
                    "description": "Allows loading insecure content for a request in an API test or in a multistep API test step.\n"
                },
                "blockedRequestPatterns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Blocked URL patterns. Requests made to URLs matching any of the patterns listed here will be blocked.\n"
                },
                "checkCertificateRevocation": {
                    "type": "boolean",
                    "description": "For SSL tests, whether or not the test should fail on revoked certificate in stapled OCSP.\n"
                },
                "ci": {
                    "$ref": "#/types/datadog:index/SyntheticsTestOptionsListCi:SyntheticsTestOptionsListCi",
                    "description": "CI/CD options for a Synthetic test.\n"
                },
                "disableAiaIntermediateFetching": {
                    "type": "boolean",
                    "description": "For SSL tests, whether or not the test should disable fetching intermediate certificates from AIA\n"
                },
                "disableCors": {
                    "type": "boolean",
                    "description": "Disable Cross-Origin Resource Sharing for browser tests.\n"
                },
                "disableCsp": {
                    "type": "boolean",
                    "description": "Disable Content Security Policy for browser tests.\n"
                },
                "followRedirects": {
                    "type": "boolean",
                    "description": "Determines whether or not the API HTTP test should follow redirects.\n"
                },
                "httpVersion": {
                    "type": "string",
                    "description": "HTTP version to use for an HTTP request in an API test or step. Valid values are \u003cspan pulumi-lang-nodejs=\"`http1`\" pulumi-lang-dotnet=\"`Http1`\" pulumi-lang-go=\"`http1`\" pulumi-lang-python=\"`http1`\" pulumi-lang-yaml=\"`http1`\" pulumi-lang-java=\"`http1`\"\u003e`http1`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`http2`\" pulumi-lang-dotnet=\"`Http2`\" pulumi-lang-go=\"`http2`\" pulumi-lang-python=\"`http2`\" pulumi-lang-yaml=\"`http2`\" pulumi-lang-java=\"`http2`\"\u003e`http2`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`any`\" pulumi-lang-dotnet=\"`Any`\" pulumi-lang-go=\"`any`\" pulumi-lang-python=\"`any`\" pulumi-lang-yaml=\"`any`\" pulumi-lang-java=\"`any`\"\u003e`any`\u003c/span\u003e. Defaults to `\"any\"`.\n"
                },
                "ignoreServerCertificateError": {
                    "type": "boolean",
                    "description": "Ignore server certificate error for browser tests.\n"
                },
                "initialNavigationTimeout": {
                    "type": "integer",
                    "description": "Timeout before declaring the initial step as failed (in seconds) for browser tests.\n"
                },
                "minFailureDuration": {
                    "type": "integer",
                    "description": "Minimum amount of time in failure required to trigger an alert (in seconds). Default is \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "minLocationFailed": {
                    "type": "integer",
                    "description": "Minimum number of locations in failure required to trigger an alert. Defaults to \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e.\n"
                },
                "monitorName": {
                    "type": "string",
                    "description": "The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs.\n"
                },
                "monitorOptions": {
                    "$ref": "#/types/datadog:index/SyntheticsTestOptionsListMonitorOptions:SyntheticsTestOptionsListMonitorOptions"
                },
                "monitorPriority": {
                    "type": "integer"
                },
                "noScreenshot": {
                    "type": "boolean",
                    "description": "Prevents saving screenshots of the steps.\n"
                },
                "restrictedRoles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of role identifiers pulled from the Roles API to restrict read and write access. **Deprecated.** This field is no longer supported by the Datadog API. Please use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "This field is no longer supported by the Datadog API. Please use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e instead."
                },
                "retry": {
                    "$ref": "#/types/datadog:index/SyntheticsTestOptionsListRetry:SyntheticsTestOptionsListRetry"
                },
                "rumSettings": {
                    "$ref": "#/types/datadog:index/SyntheticsTestOptionsListRumSettings:SyntheticsTestOptionsListRumSettings",
                    "description": "The RUM data collection settings for the Synthetic browser test.\n"
                },
                "scheduling": {
                    "$ref": "#/types/datadog:index/SyntheticsTestOptionsListScheduling:SyntheticsTestOptionsListScheduling",
                    "description": "Object containing timeframes and timezone used for advanced scheduling.\n"
                },
                "tickEvery": {
                    "type": "integer",
                    "description": "How often the test should run (in seconds). Valid range is `30-604800` for API tests and `60-604800` for browser tests.\n"
                }
            },
            "type": "object",
            "required": [
                "tickEvery"
            ]
        },
        "datadog:index/SyntheticsTestOptionsListCi:SyntheticsTestOptionsListCi": {
            "properties": {
                "executionRule": {
                    "type": "string",
                    "description": "Execution rule for a Synthetics test. Valid values are \u003cspan pulumi-lang-nodejs=\"`blocking`\" pulumi-lang-dotnet=\"`Blocking`\" pulumi-lang-go=\"`blocking`\" pulumi-lang-python=\"`blocking`\" pulumi-lang-yaml=\"`blocking`\" pulumi-lang-java=\"`blocking`\"\u003e`blocking`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`nonBlocking`\" pulumi-lang-dotnet=\"`NonBlocking`\" pulumi-lang-go=\"`nonBlocking`\" pulumi-lang-python=\"`non_blocking`\" pulumi-lang-yaml=\"`nonBlocking`\" pulumi-lang-java=\"`nonBlocking`\"\u003e`nonBlocking`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`skipped`\" pulumi-lang-dotnet=\"`Skipped`\" pulumi-lang-go=\"`skipped`\" pulumi-lang-python=\"`skipped`\" pulumi-lang-yaml=\"`skipped`\" pulumi-lang-java=\"`skipped`\"\u003e`skipped`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestOptionsListMonitorOptions:SyntheticsTestOptionsListMonitorOptions": {
            "properties": {
                "escalationMessage": {
                    "type": "string",
                    "description": "A message to include with a re-notification.\n"
                },
                "notificationPresetName": {
                    "type": "string",
                    "description": "The name of the preset for the notification for the monitor. Valid values are \u003cspan pulumi-lang-nodejs=\"`showAll`\" pulumi-lang-dotnet=\"`ShowAll`\" pulumi-lang-go=\"`showAll`\" pulumi-lang-python=\"`show_all`\" pulumi-lang-yaml=\"`showAll`\" pulumi-lang-java=\"`showAll`\"\u003e`showAll`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideAll`\" pulumi-lang-dotnet=\"`HideAll`\" pulumi-lang-go=\"`hideAll`\" pulumi-lang-python=\"`hide_all`\" pulumi-lang-yaml=\"`hideAll`\" pulumi-lang-java=\"`hideAll`\"\u003e`hideAll`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideQuery`\" pulumi-lang-dotnet=\"`HideQuery`\" pulumi-lang-go=\"`hideQuery`\" pulumi-lang-python=\"`hide_query`\" pulumi-lang-yaml=\"`hideQuery`\" pulumi-lang-java=\"`hideQuery`\"\u003e`hideQuery`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideHandles`\" pulumi-lang-dotnet=\"`HideHandles`\" pulumi-lang-go=\"`hideHandles`\" pulumi-lang-python=\"`hide_handles`\" pulumi-lang-yaml=\"`hideHandles`\" pulumi-lang-java=\"`hideHandles`\"\u003e`hideHandles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideQueryAndHandles`\" pulumi-lang-dotnet=\"`HideQueryAndHandles`\" pulumi-lang-go=\"`hideQueryAndHandles`\" pulumi-lang-python=\"`hide_query_and_handles`\" pulumi-lang-yaml=\"`hideQueryAndHandles`\" pulumi-lang-java=\"`hideQueryAndHandles`\"\u003e`hideQueryAndHandles`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`showOnlySnapshot`\" pulumi-lang-dotnet=\"`ShowOnlySnapshot`\" pulumi-lang-go=\"`showOnlySnapshot`\" pulumi-lang-python=\"`show_only_snapshot`\" pulumi-lang-yaml=\"`showOnlySnapshot`\" pulumi-lang-java=\"`showOnlySnapshot`\"\u003e`showOnlySnapshot`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`hideHandlesAndFooter`\" pulumi-lang-dotnet=\"`HideHandlesAndFooter`\" pulumi-lang-go=\"`hideHandlesAndFooter`\" pulumi-lang-python=\"`hide_handles_and_footer`\" pulumi-lang-yaml=\"`hideHandlesAndFooter`\" pulumi-lang-java=\"`hideHandlesAndFooter`\"\u003e`hideHandlesAndFooter`\u003c/span\u003e.\n"
                },
                "renotifyInterval": {
                    "type": "integer",
                    "description": "Specify a renotification frequency in minutes. Values available by default are \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10`\" pulumi-lang-dotnet=\"`10`\" pulumi-lang-go=\"`10`\" pulumi-lang-python=\"`10`\" pulumi-lang-yaml=\"`10`\" pulumi-lang-java=\"`10`\"\u003e`10`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`20`\" pulumi-lang-dotnet=\"`20`\" pulumi-lang-go=\"`20`\" pulumi-lang-python=\"`20`\" pulumi-lang-yaml=\"`20`\" pulumi-lang-java=\"`20`\"\u003e`20`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30`\" pulumi-lang-dotnet=\"`30`\" pulumi-lang-go=\"`30`\" pulumi-lang-python=\"`30`\" pulumi-lang-yaml=\"`30`\" pulumi-lang-java=\"`30`\"\u003e`30`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`40`\" pulumi-lang-dotnet=\"`40`\" pulumi-lang-go=\"`40`\" pulumi-lang-python=\"`40`\" pulumi-lang-yaml=\"`40`\" pulumi-lang-java=\"`40`\"\u003e`40`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`50`\" pulumi-lang-dotnet=\"`50`\" pulumi-lang-go=\"`50`\" pulumi-lang-python=\"`50`\" pulumi-lang-yaml=\"`50`\" pulumi-lang-java=\"`50`\"\u003e`50`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`60`\" pulumi-lang-dotnet=\"`60`\" pulumi-lang-go=\"`60`\" pulumi-lang-python=\"`60`\" pulumi-lang-yaml=\"`60`\" pulumi-lang-java=\"`60`\"\u003e`60`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`90`\" pulumi-lang-dotnet=\"`90`\" pulumi-lang-go=\"`90`\" pulumi-lang-python=\"`90`\" pulumi-lang-yaml=\"`90`\" pulumi-lang-java=\"`90`\"\u003e`90`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`120`\" pulumi-lang-dotnet=\"`120`\" pulumi-lang-go=\"`120`\" pulumi-lang-python=\"`120`\" pulumi-lang-yaml=\"`120`\" pulumi-lang-java=\"`120`\"\u003e`120`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`180`\" pulumi-lang-dotnet=\"`180`\" pulumi-lang-go=\"`180`\" pulumi-lang-python=\"`180`\" pulumi-lang-yaml=\"`180`\" pulumi-lang-java=\"`180`\"\u003e`180`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`240`\" pulumi-lang-dotnet=\"`240`\" pulumi-lang-go=\"`240`\" pulumi-lang-python=\"`240`\" pulumi-lang-yaml=\"`240`\" pulumi-lang-java=\"`240`\"\u003e`240`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`360`\" pulumi-lang-dotnet=\"`360`\" pulumi-lang-go=\"`360`\" pulumi-lang-python=\"`360`\" pulumi-lang-yaml=\"`360`\" pulumi-lang-java=\"`360`\"\u003e`360`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`720`\" pulumi-lang-dotnet=\"`720`\" pulumi-lang-go=\"`720`\" pulumi-lang-python=\"`720`\" pulumi-lang-yaml=\"`720`\" pulumi-lang-java=\"`720`\"\u003e`720`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1440`\" pulumi-lang-dotnet=\"`1440`\" pulumi-lang-go=\"`1440`\" pulumi-lang-python=\"`1440`\" pulumi-lang-yaml=\"`1440`\" pulumi-lang-java=\"`1440`\"\u003e`1440`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "renotifyOccurrences": {
                    "type": "integer",
                    "description": "The number of times a monitor renotifies. It can only be set if \u003cspan pulumi-lang-nodejs=\"`renotifyInterval`\" pulumi-lang-dotnet=\"`RenotifyInterval`\" pulumi-lang-go=\"`renotifyInterval`\" pulumi-lang-python=\"`renotify_interval`\" pulumi-lang-yaml=\"`renotifyInterval`\" pulumi-lang-java=\"`renotifyInterval`\"\u003e`renotifyInterval`\u003c/span\u003e is set.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestOptionsListRetry:SyntheticsTestOptionsListRetry": {
            "properties": {
                "count": {
                    "type": "integer",
                    "description": "Number of retries needed to consider a location as failed before sending a notification alert. Maximum value: \u003cspan pulumi-lang-nodejs=\"`3`\" pulumi-lang-dotnet=\"`3`\" pulumi-lang-go=\"`3`\" pulumi-lang-python=\"`3`\" pulumi-lang-yaml=\"`3`\" pulumi-lang-java=\"`3`\"\u003e`3`\u003c/span\u003e for \u003cspan pulumi-lang-nodejs=\"`api`\" pulumi-lang-dotnet=\"`Api`\" pulumi-lang-go=\"`api`\" pulumi-lang-python=\"`api`\" pulumi-lang-yaml=\"`api`\" pulumi-lang-java=\"`api`\"\u003e`api`\u003c/span\u003e tests, \u003cspan pulumi-lang-nodejs=\"`2`\" pulumi-lang-dotnet=\"`2`\" pulumi-lang-go=\"`2`\" pulumi-lang-python=\"`2`\" pulumi-lang-yaml=\"`2`\" pulumi-lang-java=\"`2`\"\u003e`2`\u003c/span\u003e for \u003cspan pulumi-lang-nodejs=\"`browser`\" pulumi-lang-dotnet=\"`Browser`\" pulumi-lang-go=\"`browser`\" pulumi-lang-python=\"`browser`\" pulumi-lang-yaml=\"`browser`\" pulumi-lang-java=\"`browser`\"\u003e`browser`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`mobile`\" pulumi-lang-dotnet=\"`Mobile`\" pulumi-lang-go=\"`mobile`\" pulumi-lang-python=\"`mobile`\" pulumi-lang-yaml=\"`mobile`\" pulumi-lang-java=\"`mobile`\"\u003e`mobile`\u003c/span\u003e tests. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "interval": {
                    "type": "integer",
                    "description": "Interval between a failed test and the next retry in milliseconds. Maximum value: \u003cspan pulumi-lang-nodejs=\"`5000`\" pulumi-lang-dotnet=\"`5000`\" pulumi-lang-go=\"`5000`\" pulumi-lang-python=\"`5000`\" pulumi-lang-yaml=\"`5000`\" pulumi-lang-java=\"`5000`\"\u003e`5000`\u003c/span\u003e. Defaults to \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestOptionsListRumSettings:SyntheticsTestOptionsListRumSettings": {
            "properties": {
                "applicationId": {
                    "type": "string",
                    "description": "RUM application ID used to collect RUM data for the browser test.\n"
                },
                "clientTokenId": {
                    "type": "integer",
                    "description": "RUM application API key ID used to collect RUM data for the browser test.\n",
                    "secret": true
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Determines whether RUM data is collected during test runs.\n"
                }
            },
            "type": "object",
            "required": [
                "isEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "applicationId",
                        "clientTokenId",
                        "isEnabled"
                    ]
                }
            }
        },
        "datadog:index/SyntheticsTestOptionsListScheduling:SyntheticsTestOptionsListScheduling": {
            "properties": {
                "timeframes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SyntheticsTestOptionsListSchedulingTimeframe:SyntheticsTestOptionsListSchedulingTimeframe"
                    },
                    "description": "Array containing objects describing the scheduling pattern to apply to each day.\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "Timezone in which the timeframe is based.\n"
                }
            },
            "type": "object",
            "required": [
                "timeframes",
                "timezone"
            ]
        },
        "datadog:index/SyntheticsTestOptionsListSchedulingTimeframe:SyntheticsTestOptionsListSchedulingTimeframe": {
            "properties": {
                "day": {
                    "type": "integer",
                    "description": "Number representing the day of the week\n"
                },
                "from": {
                    "type": "string",
                    "description": "The hour of the day on which scheduling starts.\n"
                },
                "to": {
                    "type": "string",
                    "description": "The hour of the day on which scheduling ends.\n"
                }
            },
            "type": "object",
            "required": [
                "day",
                "from",
                "to"
            ]
        },
        "datadog:index/SyntheticsTestRequestBasicauth:SyntheticsTestRequestBasicauth": {
            "properties": {
                "accessKey": {
                    "type": "string",
                    "description": "Access key for `SIGV4` authentication.\n",
                    "secret": true
                },
                "accessTokenUrl": {
                    "type": "string",
                    "description": "Access token url for `oauth-client` or `oauth-rop` authentication.\n"
                },
                "audience": {
                    "type": "string",
                    "description": "Audience for `oauth-client` or `oauth-rop` authentication. Defaults to `\"\"`.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Client ID for `oauth-client` or `oauth-rop` authentication.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "Client secret for `oauth-client` or `oauth-rop` authentication.\n",
                    "secret": true
                },
                "domain": {
                    "type": "string",
                    "description": "Domain for \u003cspan pulumi-lang-nodejs=\"`ntlm`\" pulumi-lang-dotnet=\"`Ntlm`\" pulumi-lang-go=\"`ntlm`\" pulumi-lang-python=\"`ntlm`\" pulumi-lang-yaml=\"`ntlm`\" pulumi-lang-java=\"`ntlm`\"\u003e`ntlm`\u003c/span\u003e authentication.\n"
                },
                "password": {
                    "type": "string",
                    "description": "Password for authentication.\n",
                    "secret": true
                },
                "region": {
                    "type": "string",
                    "description": "Region for `SIGV4` authentication.\n"
                },
                "resource": {
                    "type": "string",
                    "description": "Resource for `oauth-client` or `oauth-rop` authentication. Defaults to `\"\"`.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "Scope for `oauth-client` or `oauth-rop` authentication. Defaults to `\"\"`.\n"
                },
                "secretKey": {
                    "type": "string",
                    "description": "Secret key for `SIGV4` authentication.\n",
                    "secret": true
                },
                "serviceName": {
                    "type": "string",
                    "description": "Service name for `SIGV4` authentication.\n"
                },
                "sessionToken": {
                    "type": "string",
                    "description": "Session token for `SIGV4` authentication.\n"
                },
                "tokenApiAuthentication": {
                    "type": "string",
                    "description": "Token API Authentication for `oauth-client` or `oauth-rop` authentication. Valid values are \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of basic authentication to use when performing the test. Defaults to `\"web\"`.\n"
                },
                "username": {
                    "type": "string",
                    "description": "Username for authentication.\n"
                },
                "workstation": {
                    "type": "string",
                    "description": "Workstation for \u003cspan pulumi-lang-nodejs=\"`ntlm`\" pulumi-lang-dotnet=\"`Ntlm`\" pulumi-lang-go=\"`ntlm`\" pulumi-lang-python=\"`ntlm`\" pulumi-lang-yaml=\"`ntlm`\" pulumi-lang-java=\"`ntlm`\"\u003e`ntlm`\u003c/span\u003e authentication.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestRequestClientCertificate:SyntheticsTestRequestClientCertificate": {
            "properties": {
                "cert": {
                    "$ref": "#/types/datadog:index/SyntheticsTestRequestClientCertificateCert:SyntheticsTestRequestClientCertificateCert"
                },
                "key": {
                    "$ref": "#/types/datadog:index/SyntheticsTestRequestClientCertificateKey:SyntheticsTestRequestClientCertificateKey"
                }
            },
            "type": "object",
            "required": [
                "cert",
                "key"
            ]
        },
        "datadog:index/SyntheticsTestRequestClientCertificateCert:SyntheticsTestRequestClientCertificateCert": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "Content of the certificate.\n",
                    "secret": true
                },
                "filename": {
                    "type": "string",
                    "description": "File name for the certificate. Defaults to `\"Provided in Terraform config\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestRequestClientCertificateKey:SyntheticsTestRequestClientCertificateKey": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "Content of the certificate.\n",
                    "secret": true
                },
                "filename": {
                    "type": "string",
                    "description": "File name for the certificate. Defaults to `\"Provided in Terraform config\"`.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/SyntheticsTestRequestDefinition:SyntheticsTestRequestDefinition": {
            "properties": {
                "body": {
                    "type": "string",
                    "description": "The request body.\n"
                },
                "bodyType": {
                    "type": "string",
                    "description": "Type of the request body. Valid values are `text/plain`, `application/json`, `text/xml`, `text/html`, `application/x-www-form-urlencoded`, \u003cspan pulumi-lang-nodejs=\"`graphql`\" pulumi-lang-dotnet=\"`Graphql`\" pulumi-lang-go=\"`graphql`\" pulumi-lang-python=\"`graphql`\" pulumi-lang-yaml=\"`graphql`\" pulumi-lang-java=\"`graphql`\"\u003e`graphql`\u003c/span\u003e, `application/octet-stream`, `multipart/form-data`.\n"
                },
                "callType": {
                    "type": "string",
                    "description": "The type of gRPC call to perform. Valid values are \u003cspan pulumi-lang-nodejs=\"`healthcheck`\" pulumi-lang-dotnet=\"`Healthcheck`\" pulumi-lang-go=\"`healthcheck`\" pulumi-lang-python=\"`healthcheck`\" pulumi-lang-yaml=\"`healthcheck`\" pulumi-lang-java=\"`healthcheck`\"\u003e`healthcheck`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`unary`\" pulumi-lang-dotnet=\"`Unary`\" pulumi-lang-go=\"`unary`\" pulumi-lang-python=\"`unary`\" pulumi-lang-yaml=\"`unary`\" pulumi-lang-java=\"`unary`\"\u003e`unary`\u003c/span\u003e.\n"
                },
                "certificateDomains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in \u003cspan pulumi-lang-nodejs=\"`certificateDomains`\" pulumi-lang-dotnet=\"`CertificateDomains`\" pulumi-lang-go=\"`certificateDomains`\" pulumi-lang-python=\"`certificate_domains`\" pulumi-lang-yaml=\"`certificateDomains`\" pulumi-lang-java=\"`certificateDomains`\"\u003e`certificateDomains`\u003c/span\u003e.\n"
                },
                "destinationService": {
                    "type": "string",
                    "description": "For Network Path tests, an optional label displayed for the destination host in the Network Path visualization.\n"
                },
                "dnsServer": {
                    "type": "string",
                    "description": "DNS server to use for DNS tests (`subtype = \"dns\"`).\n"
                },
                "dnsServerPort": {
                    "type": "string",
                    "description": "DNS server port to use for DNS tests.\n"
                },
                "e2eQueries": {
                    "type": "integer",
                    "description": "For Network Path tests, the number of packets sent to probe the destination to measure packet loss, latency, and jitter.\n"
                },
                "form": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Form data to be sent when \u003cspan pulumi-lang-nodejs=\"`bodyType`\" pulumi-lang-dotnet=\"`BodyType`\" pulumi-lang-go=\"`bodyType`\" pulumi-lang-python=\"`body_type`\" pulumi-lang-yaml=\"`bodyType`\" pulumi-lang-java=\"`bodyType`\"\u003e`bodyType`\u003c/span\u003e is `multipart/form-data`.\n"
                },
                "host": {
                    "type": "string",
                    "description": "Host name to perform the test with.\n"
                },
                "httpVersion": {
                    "type": "string",
                    "description": "HTTP version to use for an HTTP request in an API test or step. **Deprecated.** Use \u003cspan pulumi-lang-nodejs=\"`httpVersion`\" pulumi-lang-dotnet=\"`HttpVersion`\" pulumi-lang-go=\"`httpVersion`\" pulumi-lang-python=\"`http_version`\" pulumi-lang-yaml=\"`httpVersion`\" pulumi-lang-java=\"`httpVersion`\"\u003e`httpVersion`\u003c/span\u003e in the \u003cspan pulumi-lang-nodejs=\"`optionsList`\" pulumi-lang-dotnet=\"`OptionsList`\" pulumi-lang-go=\"`optionsList`\" pulumi-lang-python=\"`options_list`\" pulumi-lang-yaml=\"`optionsList`\" pulumi-lang-java=\"`optionsList`\"\u003e`optionsList`\u003c/span\u003e field instead.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`httpVersion`\" pulumi-lang-dotnet=\"`HttpVersion`\" pulumi-lang-go=\"`httpVersion`\" pulumi-lang-python=\"`http_version`\" pulumi-lang-yaml=\"`httpVersion`\" pulumi-lang-java=\"`httpVersion`\"\u003e`httpVersion`\u003c/span\u003e in the \u003cspan pulumi-lang-nodejs=\"`optionsList`\" pulumi-lang-dotnet=\"`OptionsList`\" pulumi-lang-go=\"`optionsList`\" pulumi-lang-python=\"`options_list`\" pulumi-lang-yaml=\"`optionsList`\" pulumi-lang-java=\"`optionsList`\"\u003e`optionsList`\u003c/span\u003e field instead."
                },
                "isMessageBase64Encoded": {
                    "type": "boolean",
                    "description": "For Websocket tests, whether the message is treated as a base64-encoded string in the server.\n"
                },
                "maxTtl": {
                    "type": "integer",
                    "description": "For Network Path tests, the maximum time-to-live (max number of hops) used in outgoing probe packets.\n"
                },
                "message": {
                    "type": "string",
                    "description": "For gRPC, UDP, and Websocket tests, message to send with the request.\n"
                },
                "method": {
                    "type": "string",
                    "description": "Either the HTTP method/verb to use or a gRPC method available on the service set in the \u003cspan pulumi-lang-nodejs=\"`service`\" pulumi-lang-dotnet=\"`Service`\" pulumi-lang-go=\"`service`\" pulumi-lang-python=\"`service`\" pulumi-lang-yaml=\"`service`\" pulumi-lang-java=\"`service`\"\u003e`service`\u003c/span\u003e field. Required if \u003cspan pulumi-lang-nodejs=\"`subtype`\" pulumi-lang-dotnet=\"`Subtype`\" pulumi-lang-go=\"`subtype`\" pulumi-lang-python=\"`subtype`\" pulumi-lang-yaml=\"`subtype`\" pulumi-lang-java=\"`subtype`\"\u003e`subtype`\u003c/span\u003e is `HTTP` or if \u003cspan pulumi-lang-nodejs=\"`subtype`\" pulumi-lang-dotnet=\"`Subtype`\" pulumi-lang-go=\"`subtype`\" pulumi-lang-python=\"`subtype`\" pulumi-lang-yaml=\"`subtype`\" pulumi-lang-java=\"`subtype`\"\u003e`subtype`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`grpc`\" pulumi-lang-dotnet=\"`Grpc`\" pulumi-lang-go=\"`grpc`\" pulumi-lang-python=\"`grpc`\" pulumi-lang-yaml=\"`grpc`\" pulumi-lang-java=\"`grpc`\"\u003e`grpc`\u003c/span\u003e and `callType` is \u003cspan pulumi-lang-nodejs=\"`unary`\" pulumi-lang-dotnet=\"`Unary`\" pulumi-lang-go=\"`unary`\" pulumi-lang-python=\"`unary`\" pulumi-lang-yaml=\"`unary`\" pulumi-lang-java=\"`unary`\"\u003e`unary`\u003c/span\u003e.\n"
                },
                "noSavingResponseBody": {
                    "type": "boolean",
                    "description": "Determines whether or not to save the response body.\n"
                },
                "numberOfPackets": {
                    "type": "integer",
                    "description": "Number of pings to use per test for ICMP tests (`subtype = \"icmp\"`) between 0 and 10.\n"
                },
                "persistCookies": {
                    "type": "boolean",
                    "description": "Persist cookies across redirects.\n"
                },
                "plainProtoFile": {
                    "type": "string",
                    "description": "The content of a proto file as a string.\n"
                },
                "port": {
                    "type": "string",
                    "description": "Port to use when performing the test.\n"
                },
                "protoJsonDescriptor": {
                    "type": "string",
                    "description": "A protobuf JSON descriptor. **Deprecated.** Use \u003cspan pulumi-lang-nodejs=\"`plainProtoFile`\" pulumi-lang-dotnet=\"`PlainProtoFile`\" pulumi-lang-go=\"`plainProtoFile`\" pulumi-lang-python=\"`plain_proto_file`\" pulumi-lang-yaml=\"`plainProtoFile`\" pulumi-lang-java=\"`plainProtoFile`\"\u003e`plainProtoFile`\u003c/span\u003e instead.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`plainProtoFile`\" pulumi-lang-dotnet=\"`PlainProtoFile`\" pulumi-lang-go=\"`plainProtoFile`\" pulumi-lang-python=\"`plain_proto_file`\" pulumi-lang-yaml=\"`plainProtoFile`\" pulumi-lang-java=\"`plainProtoFile`\"\u003e`plainProtoFile`\u003c/span\u003e instead."
                },
                "servername": {
                    "type": "string",
                    "description": "For SSL tests, it specifies on which server you want to initiate the TLS handshake, allowing the server to present one of multiple possible certificates on the same IP address and TCP port number.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The gRPC service on which you want to perform the gRPC call.\n"
                },
                "shouldTrackHops": {
                    "type": "boolean",
                    "description": "This will turn on a traceroute probe to discover all gateways along the path to the host destination. For ICMP tests (`subtype = \"icmp\"`).\n"
                },
                "sourceService": {
                    "type": "string",
                    "description": "For Network Path tests, an optional label displayed for the source host in the Network Path visualization\n"
                },
                "tcpMethod": {
                    "type": "string",
                    "description": "For TCP Network Path tests, the TCP traceroute strategy.\n"
                },
                "timeout": {
                    "type": "integer",
                    "description": "Timeout in seconds for the test.\n"
                },
                "tracerouteQueries": {
                    "type": "integer",
                    "description": "For Network Path tests, the number of traceroute path tracings.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL to send the request to.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "httpVersion"
                    ]
                }
            }
        },
        "datadog:index/SyntheticsTestRequestFile:SyntheticsTestRequestFile": {
            "properties": {
                "bucketKey": {
                    "type": "string",
                    "description": "Bucket key of the file.\n"
                },
                "content": {
                    "type": "string",
                    "description": "Content of the file.\n"
                },
                "encoding": {
                    "type": "string",
                    "description": "Encoding of the file content. Must be \u003cspan pulumi-lang-nodejs=\"`base64`\" pulumi-lang-dotnet=\"`Base64`\" pulumi-lang-go=\"`base64`\" pulumi-lang-python=\"`base64`\" pulumi-lang-yaml=\"`base64`\" pulumi-lang-java=\"`base64`\"\u003e`base64`\u003c/span\u003e when content contains base64-encoded data.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the file.\n"
                },
                "originalFileName": {
                    "type": "string",
                    "description": "Original name of the file.\n"
                },
                "size": {
                    "type": "integer",
                    "description": "Size of the file.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the file.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "size",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "bucketKey",
                        "name",
                        "size",
                        "type"
                    ]
                }
            }
        },
        "datadog:index/SyntheticsTestRequestProxy:SyntheticsTestRequestProxy": {
            "properties": {
                "headers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Header name and value map.\n"
                },
                "url": {
                    "type": "string",
                    "description": "URL of the proxy to perform the test.\n"
                }
            },
            "type": "object",
            "required": [
                "url"
            ]
        },
        "datadog:index/TagPipelineRulesetRule:TagPipelineRulesetRule": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the rule is enabled.\n"
                },
                "mapping": {
                    "$ref": "#/types/datadog:index/TagPipelineRulesetRuleMapping:TagPipelineRulesetRuleMapping",
                    "description": "The mapping configuration for the rule.\n"
                },
                "metadata": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Rule metadata key-value pairs.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule.\n"
                },
                "query": {
                    "$ref": "#/types/datadog:index/TagPipelineRulesetRuleQuery:TagPipelineRulesetRuleQuery",
                    "description": "The query configuration for the rule.\n"
                },
                "referenceTable": {
                    "$ref": "#/types/datadog:index/TagPipelineRulesetRuleReferenceTable:TagPipelineRulesetRuleReferenceTable",
                    "description": "The reference table configuration for the rule.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "enabled",
                        "metadata",
                        "name"
                    ]
                }
            }
        },
        "datadog:index/TagPipelineRulesetRuleMapping:TagPipelineRulesetRuleMapping": {
            "properties": {
                "destinationKey": {
                    "type": "string",
                    "description": "The destination key for the mapping.\n"
                },
                "ifNotExists": {
                    "type": "boolean",
                    "description": "Whether to apply the mapping only if the destination key doesn't exist.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`ifTagExists`\" pulumi-lang-dotnet=\"`IfTagExists`\" pulumi-lang-go=\"`ifTagExists`\" pulumi-lang-python=\"`if_tag_exists`\" pulumi-lang-yaml=\"`ifTagExists`\" pulumi-lang-java=\"`ifTagExists`\"\u003e`ifTagExists`\u003c/span\u003e instead. This field will be removed in a future release."
                },
                "ifTagExists": {
                    "type": "string",
                    "description": "Behavior when the tag already exists. Valid values: \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e (append to the existing tag value), \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e (replace existing tag value), \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e (never apply if tag already exists). Valid values are \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e.\n"
                },
                "sourceKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The source keys for the mapping.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "ifNotExists",
                        "ifTagExists"
                    ]
                }
            }
        },
        "datadog:index/TagPipelineRulesetRuleQuery:TagPipelineRulesetRuleQuery": {
            "properties": {
                "addition": {
                    "$ref": "#/types/datadog:index/TagPipelineRulesetRuleQueryAddition:TagPipelineRulesetRuleQueryAddition",
                    "description": "The addition configuration for the query.\n"
                },
                "caseInsensitivity": {
                    "type": "boolean",
                    "description": "Whether the query matching is case insensitive.\n"
                },
                "ifNotExists": {
                    "type": "boolean",
                    "description": "Whether to apply the query only if the key doesn't exist.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`ifTagExists`\" pulumi-lang-dotnet=\"`IfTagExists`\" pulumi-lang-go=\"`ifTagExists`\" pulumi-lang-python=\"`if_tag_exists`\" pulumi-lang-yaml=\"`ifTagExists`\" pulumi-lang-java=\"`ifTagExists`\"\u003e`ifTagExists`\u003c/span\u003e instead. This field will be removed in a future release."
                },
                "ifTagExists": {
                    "type": "string",
                    "description": "Behavior when the tag already exists. Valid values: \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e (append to the existing tag value), \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e (replace existing tag value), \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e (never apply if tag already exists). Valid values are \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query string.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "caseInsensitivity",
                        "ifNotExists",
                        "ifTagExists"
                    ]
                }
            }
        },
        "datadog:index/TagPipelineRulesetRuleQueryAddition:TagPipelineRulesetRuleQueryAddition": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "The key to add.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value to add.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/TagPipelineRulesetRuleReferenceTable:TagPipelineRulesetRuleReferenceTable": {
            "properties": {
                "caseInsensitivity": {
                    "type": "boolean",
                    "description": "Whether the reference table lookup is case insensitive.\n"
                },
                "fieldPairs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/TagPipelineRulesetRuleReferenceTableFieldPair:TagPipelineRulesetRuleReferenceTableFieldPair"
                    },
                    "description": "The field pairs for the reference table.\n"
                },
                "ifNotExists": {
                    "type": "boolean",
                    "description": "Whether to apply the reference table only if the key doesn't exist.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`ifTagExists`\" pulumi-lang-dotnet=\"`IfTagExists`\" pulumi-lang-go=\"`ifTagExists`\" pulumi-lang-python=\"`if_tag_exists`\" pulumi-lang-yaml=\"`ifTagExists`\" pulumi-lang-java=\"`ifTagExists`\"\u003e`ifTagExists`\u003c/span\u003e instead. This field will be removed in a future release."
                },
                "ifTagExists": {
                    "type": "string",
                    "description": "Behavior when the tag already exists. Valid values: \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e (append to the existing tag value), \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e (replace existing tag value), \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e (never apply if tag already exists). Valid values are \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e.\n"
                },
                "sourceKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The source keys for the reference table lookup.\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "The name of the reference table.\n"
                }
            },
            "type": "object",
            "language": {
                "nodejs": {
                    "requiredOutputs": [
                        "caseInsensitivity",
                        "ifNotExists",
                        "ifTagExists"
                    ]
                }
            }
        },
        "datadog:index/TagPipelineRulesetRuleReferenceTableFieldPair:TagPipelineRulesetRuleReferenceTableFieldPair": {
            "properties": {
                "inputColumn": {
                    "type": "string",
                    "description": "The input column name.\n"
                },
                "outputKey": {
                    "type": "string",
                    "description": "The output key name.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/TeamNotificationRuleEmail:TeamNotificationRuleEmail": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether to send email notifications to team members when alerts are triggered.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/TeamNotificationRuleMsTeams:TeamNotificationRuleMsTeams": {
            "properties": {
                "connectorName": {
                    "type": "string",
                    "description": "MS Teams connector name used to route notifications to the appropriate channel.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/TeamNotificationRulePagerduty:TeamNotificationRulePagerduty": {
            "properties": {
                "serviceName": {
                    "type": "string",
                    "description": "PagerDuty service name to send incident notifications to. The service name can be found in your PagerDuty service settings.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/TeamNotificationRuleSlack:TeamNotificationRuleSlack": {
            "properties": {
                "channel": {
                    "type": "string",
                    "description": "Slack channel name for notifications (for example, #alerts or #team-notifications).\n"
                },
                "workspace": {
                    "type": "string",
                    "description": "Slack workspace name where the channel is located.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getActionConnectionAws:getActionConnectionAws": {
            "properties": {
                "assumeRole": {
                    "$ref": "#/types/datadog:index/getActionConnectionAwsAssumeRole:getActionConnectionAwsAssumeRole",
                    "description": "Configuration for an assume role AWS connection\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getActionConnectionAwsAssumeRole:getActionConnectionAwsAssumeRole": {
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "AWS account that the connection is created for\n"
                },
                "externalId": {
                    "type": "string",
                    "description": "External ID that specifies which connection can be used to assume the role\n"
                },
                "principalId": {
                    "type": "string",
                    "description": "AWS account that will assume the role\n"
                },
                "role": {
                    "type": "string",
                    "description": "Role to assume\n"
                }
            },
            "type": "object",
            "required": [
                "accountId",
                "externalId",
                "principalId",
                "role"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getActionConnectionHttp:getActionConnectionHttp": {
            "properties": {
                "baseUrl": {
                    "type": "string",
                    "description": "Base HTTP url for the integration\n"
                },
                "tokenAuth": {
                    "$ref": "#/types/datadog:index/getActionConnectionHttpTokenAuth:getActionConnectionHttpTokenAuth",
                    "description": "Configuration for an HTTP connection that uses token auth\n"
                }
            },
            "type": "object",
            "required": [
                "baseUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getActionConnectionHttpTokenAuth:getActionConnectionHttpTokenAuth": {
            "properties": {
                "body": {
                    "$ref": "#/types/datadog:index/getActionConnectionHttpTokenAuthBody:getActionConnectionHttpTokenAuthBody",
                    "description": "Body for HTTP authentication\n"
                },
                "headers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getActionConnectionHttpTokenAuthHeader:getActionConnectionHttpTokenAuthHeader"
                    },
                    "description": "Header for HTTP authentication\n"
                },
                "tokens": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getActionConnectionHttpTokenAuthToken:getActionConnectionHttpTokenAuthToken"
                    },
                    "description": "Token for HTTP authentication\n"
                },
                "urlParameters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getActionConnectionHttpTokenAuthUrlParameter:getActionConnectionHttpTokenAuthUrlParameter"
                    },
                    "description": "URL parameter for HTTP authentication\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getActionConnectionHttpTokenAuthBody:getActionConnectionHttpTokenAuthBody": {
            "properties": {
                "content": {
                    "type": "string",
                    "description": "Serialized body content\n"
                },
                "contentType": {
                    "type": "string",
                    "description": "Content type of the body\n"
                }
            },
            "type": "object",
            "required": [
                "content",
                "contentType"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getActionConnectionHttpTokenAuthHeader:getActionConnectionHttpTokenAuthHeader": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Header name\n"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getActionConnectionHttpTokenAuthToken:getActionConnectionHttpTokenAuthToken": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Token name\n"
                },
                "type": {
                    "type": "string",
                    "description": "Token type\n"
                },
                "value": {
                    "type": "string",
                    "description": "Token value\n",
                    "secret": true
                }
            },
            "type": "object",
            "required": [
                "name",
                "type",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getActionConnectionHttpTokenAuthUrlParameter:getActionConnectionHttpTokenAuthUrlParameter": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "URL parameter name\n"
                },
                "value": {
                    "type": "string",
                    "description": "URL parameter value\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getAwsCurConfigAccountFilters:getAwsCurConfigAccountFilters": {
            "properties": {
                "excludedAccounts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of AWS account IDs excluded from cost analysis.\n"
                },
                "includeNewAccounts": {
                    "type": "boolean",
                    "description": "Whether new member accounts are automatically included in cost analysis.\n"
                },
                "includedAccounts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of AWS account IDs included in cost analysis.\n"
                }
            },
            "type": "object",
            "required": [
                "excludedAccounts",
                "includeNewAccounts",
                "includedAccounts"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getAzureUcConfigActualBillConfig:getAzureUcConfigActualBillConfig": {
            "properties": {
                "exportName": {
                    "type": "string",
                    "description": "The name of the configured Azure Export.\n"
                },
                "exportPath": {
                    "type": "string",
                    "description": "The path where the Azure Export is saved.\n"
                },
                "storageAccount": {
                    "type": "string",
                    "description": "The name of the storage account where the Azure Export is saved.\n"
                },
                "storageContainer": {
                    "type": "string",
                    "description": "The name of the storage container where the Azure Export is saved.\n"
                }
            },
            "type": "object",
            "required": [
                "exportName",
                "exportPath",
                "storageAccount",
                "storageContainer"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getAzureUcConfigAmortizedBillConfig:getAzureUcConfigAmortizedBillConfig": {
            "properties": {
                "exportName": {
                    "type": "string",
                    "description": "The name of the configured Azure Export.\n"
                },
                "exportPath": {
                    "type": "string",
                    "description": "The path where the Azure Export is saved.\n"
                },
                "storageAccount": {
                    "type": "string",
                    "description": "The name of the storage account where the Azure Export is saved.\n"
                },
                "storageContainer": {
                    "type": "string",
                    "description": "The name of the storage container where the Azure Export is saved.\n"
                }
            },
            "type": "object",
            "required": [
                "exportName",
                "exportPath",
                "storageAccount",
                "storageContainer"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCloudWorkloadSecurityAgentRulesAgentRule:getCloudWorkloadSecurityAgentRulesAgentRule": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "The description of the Agent rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Agent rule is enabled.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The SECL expression of the Agent rule.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The id of the Agent rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Agent rule.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "expression",
                "id",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCostBudgetBudgetLine:getCostBudgetBudgetLine": {
            "properties": {
                "amounts": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "number"
                    },
                    "description": "Map of month (YYYYMM as string) to budget amount.\n"
                },
                "childTagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCostBudgetBudgetLineChildTagFilter:getCostBudgetBudgetLineChildTagFilter"
                    },
                    "description": "Child tag filters for hierarchical budgets (second tag in 'by' clause).\n"
                },
                "parentTagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCostBudgetBudgetLineParentTagFilter:getCostBudgetBudgetLineParentTagFilter"
                    },
                    "description": "Parent tag filters for hierarchical budgets (first tag in 'by' clause).\n"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCostBudgetBudgetLineTagFilter:getCostBudgetBudgetLineTagFilter"
                    },
                    "description": "Tag filters for non-hierarchical budgets (single tag or no tags).\n"
                }
            },
            "type": "object",
            "required": [
                "amounts"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCostBudgetBudgetLineChildTagFilter:getCostBudgetBudgetLineChildTagFilter": {
            "properties": {
                "tagKey": {
                    "type": "string"
                },
                "tagValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCostBudgetBudgetLineParentTagFilter:getCostBudgetBudgetLineParentTagFilter": {
            "properties": {
                "tagKey": {
                    "type": "string"
                },
                "tagValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCostBudgetBudgetLineTagFilter:getCostBudgetBudgetLineTagFilter": {
            "properties": {
                "tagKey": {
                    "type": "string"
                },
                "tagValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCostBudgetEntry:getCostBudgetEntry": {
            "properties": {
                "amount": {
                    "type": "number"
                },
                "month": {
                    "type": "integer"
                },
                "tagFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCostBudgetEntryTagFilter:getCostBudgetEntryTagFilter"
                    }
                }
            },
            "type": "object",
            "required": [
                "amount",
                "month"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCostBudgetEntryTagFilter:getCostBudgetEntryTagFilter": {
            "properties": {
                "tagKey": {
                    "type": "string"
                },
                "tagValue": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagValue"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCsmThreatsAgentRulesAgentRule:getCsmThreatsAgentRulesAgentRule": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCsmThreatsAgentRulesAgentRuleAction:getCsmThreatsAgentRulesAgentRuleAction"
                    }
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "expression": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "productTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "actions",
                "description",
                "enabled",
                "expression",
                "id",
                "name",
                "productTags"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCsmThreatsAgentRulesAgentRuleAction:getCsmThreatsAgentRulesAgentRuleAction": {
            "properties": {
                "hash": {
                    "$ref": "#/types/datadog:index/getCsmThreatsAgentRulesAgentRuleActionHash:getCsmThreatsAgentRulesAgentRuleActionHash"
                },
                "set": {
                    "$ref": "#/types/datadog:index/getCsmThreatsAgentRulesAgentRuleActionSet:getCsmThreatsAgentRulesAgentRuleActionSet"
                }
            },
            "type": "object",
            "required": [
                "hash",
                "set"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCsmThreatsAgentRulesAgentRuleActionHash:getCsmThreatsAgentRulesAgentRuleActionHash": {
            "properties": {
                "field": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "field"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCsmThreatsAgentRulesAgentRuleActionSet:getCsmThreatsAgentRulesAgentRuleActionSet": {
            "properties": {
                "append": {
                    "type": "boolean"
                },
                "defaultValue": {
                    "type": "string"
                },
                "expression": {
                    "type": "string"
                },
                "field": {
                    "type": "string"
                },
                "inherited": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "scope": {
                    "type": "string"
                },
                "size": {
                    "type": "integer"
                },
                "ttl": {
                    "type": "integer"
                },
                "value": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "append",
                "defaultValue",
                "expression",
                "field",
                "inherited",
                "name",
                "scope",
                "size",
                "ttl",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCsmThreatsPoliciesPolicy:getCsmThreatsPoliciesPolicy": {
            "properties": {
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "hostTagsLists": {
                    "type": "array",
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "description",
                "enabled",
                "hostTagsLists",
                "id",
                "name",
                "tags"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCustomAllocationRuleCostsToAllocate:getCustomAllocationRuleCostsToAllocate": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition used to match tags. Valid values are `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e, `not in`.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The tag key used in the filter.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The tag value used in the filter (for single-value conditions).\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of tag values used in the filter (for multi-value conditions like \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`notIn`\" pulumi-lang-dotnet=\"`NotIn`\" pulumi-lang-go=\"`notIn`\" pulumi-lang-python=\"`not_in`\" pulumi-lang-yaml=\"`notIn`\" pulumi-lang-java=\"`notIn`\"\u003e`notIn`\u003c/span\u003e).\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "tag",
                "value",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCustomAllocationRuleStrategy:getCustomAllocationRuleStrategy": {
            "properties": {
                "allocatedBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCustomAllocationRuleStrategyAllocatedBy:getCustomAllocationRuleStrategyAllocatedBy"
                    }
                },
                "allocatedByFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCustomAllocationRuleStrategyAllocatedByFilter:getCustomAllocationRuleStrategyAllocatedByFilter"
                    }
                },
                "allocatedByTagKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tag keys used to allocate costs.\n"
                },
                "basedOnCosts": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCustomAllocationRuleStrategyBasedOnCost:getCustomAllocationRuleStrategyBasedOnCost"
                    }
                },
                "basedOnTimeseries": {
                    "$ref": "#/types/datadog:index/getCustomAllocationRuleStrategyBasedOnTimeseries:getCustomAllocationRuleStrategyBasedOnTimeseries"
                },
                "evaluateGroupedByFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCustomAllocationRuleStrategyEvaluateGroupedByFilter:getCustomAllocationRuleStrategyEvaluateGroupedByFilter"
                    }
                },
                "evaluateGroupedByTagKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tag keys used to group costs before allocation.\n"
                },
                "granularity": {
                    "type": "string",
                    "description": "The granularity level for cost allocation (\u003cspan pulumi-lang-nodejs=\"`daily`\" pulumi-lang-dotnet=\"`Daily`\" pulumi-lang-go=\"`daily`\" pulumi-lang-python=\"`daily`\" pulumi-lang-yaml=\"`daily`\" pulumi-lang-java=\"`daily`\"\u003e`daily`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`monthly`\" pulumi-lang-dotnet=\"`Monthly`\" pulumi-lang-go=\"`monthly`\" pulumi-lang-python=\"`monthly`\" pulumi-lang-yaml=\"`monthly`\" pulumi-lang-java=\"`monthly`\"\u003e`monthly`\u003c/span\u003e).\n"
                },
                "method": {
                    "type": "string",
                    "description": "The allocation method. Valid values are \u003cspan pulumi-lang-nodejs=\"`even`\" pulumi-lang-dotnet=\"`Even`\" pulumi-lang-go=\"`even`\" pulumi-lang-python=\"`even`\" pulumi-lang-yaml=\"`even`\" pulumi-lang-java=\"`even`\"\u003e`even`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`proportional`\" pulumi-lang-dotnet=\"`Proportional`\" pulumi-lang-go=\"`proportional`\" pulumi-lang-python=\"`proportional`\" pulumi-lang-yaml=\"`proportional`\" pulumi-lang-java=\"`proportional`\"\u003e`proportional`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`proportionalTimeseries`\" pulumi-lang-dotnet=\"`ProportionalTimeseries`\" pulumi-lang-go=\"`proportionalTimeseries`\" pulumi-lang-python=\"`proportional_timeseries`\" pulumi-lang-yaml=\"`proportionalTimeseries`\" pulumi-lang-java=\"`proportionalTimeseries`\"\u003e`proportionalTimeseries`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`percent`\" pulumi-lang-dotnet=\"`Percent`\" pulumi-lang-go=\"`percent`\" pulumi-lang-python=\"`percent`\" pulumi-lang-yaml=\"`percent`\" pulumi-lang-java=\"`percent`\"\u003e`percent`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "allocatedByTagKeys",
                "evaluateGroupedByTagKeys",
                "granularity",
                "method"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCustomAllocationRuleStrategyAllocatedBy:getCustomAllocationRuleStrategyAllocatedBy": {
            "properties": {
                "allocatedTags": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getCustomAllocationRuleStrategyAllocatedByAllocatedTag:getCustomAllocationRuleStrategyAllocatedByAllocatedTag"
                    }
                },
                "percentage": {
                    "type": "number",
                    "description": "The percentage of costs allocated to this target as a decimal (e.g., 0.33 for 33%).\n"
                }
            },
            "type": "object",
            "required": [
                "percentage"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCustomAllocationRuleStrategyAllocatedByAllocatedTag:getCustomAllocationRuleStrategyAllocatedByAllocatedTag": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "The tag key for cost allocation.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The tag value used in the filter (for single-value conditions).\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCustomAllocationRuleStrategyAllocatedByFilter:getCustomAllocationRuleStrategyAllocatedByFilter": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition used to match tags. Valid values are `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e, `not in`.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The tag key used in the filter.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The tag value used in the filter (for single-value conditions).\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of tag values used in the filter (for multi-value conditions like \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`notIn`\" pulumi-lang-dotnet=\"`NotIn`\" pulumi-lang-go=\"`notIn`\" pulumi-lang-python=\"`not_in`\" pulumi-lang-yaml=\"`notIn`\" pulumi-lang-java=\"`notIn`\"\u003e`notIn`\u003c/span\u003e).\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "tag",
                "value",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCustomAllocationRuleStrategyBasedOnCost:getCustomAllocationRuleStrategyBasedOnCost": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition used to match tags. Valid values are `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e, `not in`.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The tag key used in the filter.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The tag value used in the filter (for single-value conditions).\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of tag values used in the filter (for multi-value conditions like \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`notIn`\" pulumi-lang-dotnet=\"`NotIn`\" pulumi-lang-go=\"`notIn`\" pulumi-lang-python=\"`not_in`\" pulumi-lang-yaml=\"`notIn`\" pulumi-lang-java=\"`notIn`\"\u003e`notIn`\u003c/span\u003e).\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "tag",
                "value",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getCustomAllocationRuleStrategyBasedOnTimeseries:getCustomAllocationRuleStrategyBasedOnTimeseries": {
            "type": "object"
        },
        "datadog:index/getCustomAllocationRuleStrategyEvaluateGroupedByFilter:getCustomAllocationRuleStrategyEvaluateGroupedByFilter": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "The condition used to match tags. Valid values are `=`, `!=`, \u003cspan pulumi-lang-nodejs=\"`is`\" pulumi-lang-dotnet=\"`Is`\" pulumi-lang-go=\"`is`\" pulumi-lang-python=\"`is`\" pulumi-lang-yaml=\"`is`\" pulumi-lang-java=\"`is`\"\u003e`is`\u003c/span\u003e, `is not`, \u003cspan pulumi-lang-nodejs=\"`like`\" pulumi-lang-dotnet=\"`Like`\" pulumi-lang-go=\"`like`\" pulumi-lang-python=\"`like`\" pulumi-lang-yaml=\"`like`\" pulumi-lang-java=\"`like`\"\u003e`like`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e, `not in`.\n"
                },
                "tag": {
                    "type": "string",
                    "description": "The tag key used in the filter.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The tag value used in the filter (for single-value conditions).\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of tag values used in the filter (for multi-value conditions like \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`notIn`\" pulumi-lang-dotnet=\"`NotIn`\" pulumi-lang-go=\"`notIn`\" pulumi-lang-python=\"`not_in`\" pulumi-lang-yaml=\"`notIn`\" pulumi-lang-java=\"`notIn`\"\u003e`notIn`\u003c/span\u003e).\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "tag",
                "value",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getHostsHostList:getHostsHostList": {
            "properties": {
                "aliases": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "apps": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "awsName": {
                    "type": "string"
                },
                "hostName": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "isMuted": {
                    "type": "boolean"
                },
                "lastReportedTime": {
                    "type": "integer"
                },
                "meta": {
                    "$ref": "#/types/datadog:index/getHostsHostListMeta:getHostsHostListMeta"
                },
                "metrics": {
                    "$ref": "#/types/datadog:index/getHostsHostListMetrics:getHostsHostListMetrics"
                },
                "muteTimeout": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "sources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "tagsBySource": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "up": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "aliases",
                "apps",
                "awsName",
                "hostName",
                "id",
                "isMuted",
                "lastReportedTime",
                "meta",
                "metrics",
                "muteTimeout",
                "name",
                "sources",
                "tagsBySource",
                "up"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getHostsHostListMeta:getHostsHostListMeta": {
            "properties": {
                "agentVersion": {
                    "type": "string"
                },
                "cpuCores": {
                    "type": "integer"
                },
                "gohai": {
                    "type": "string"
                },
                "machine": {
                    "type": "string"
                },
                "platform": {
                    "type": "string"
                },
                "processor": {
                    "type": "string"
                },
                "pythonVersion": {
                    "type": "string"
                },
                "socketFqdn": {
                    "type": "string"
                },
                "socketHostname": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "agentVersion",
                "cpuCores",
                "gohai",
                "machine",
                "platform",
                "processor",
                "pythonVersion",
                "socketFqdn",
                "socketHostname"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getHostsHostListMetrics:getHostsHostListMetrics": {
            "properties": {
                "cpu": {
                    "type": "number"
                },
                "iowait": {
                    "type": "number"
                },
                "load": {
                    "type": "number"
                }
            },
            "type": "object",
            "required": [
                "cpu",
                "iowait",
                "load"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getIncidentNotificationRuleCondition:getIncidentNotificationRuleCondition": {
            "properties": {
                "field": {
                    "type": "string",
                    "description": "The incident field to evaluate. Common values include: state, severity, services, teams. Custom fields are also supported.\n"
                },
                "values": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The value(s) to compare against.\n"
                }
            },
            "type": "object",
            "required": [
                "field",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getLogsIndexesLogsIndex:getLogsIndexesLogsIndex": {
            "properties": {
                "dailyLimit": {
                    "type": "integer",
                    "description": "The number of log events you can send in this index per day before you are rate-limited.\n"
                },
                "dailyLimitResets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getLogsIndexesLogsIndexDailyLimitReset:getLogsIndexesLogsIndexDailyLimitReset"
                    },
                    "description": "Object containing options to override the default daily limit reset time.\n"
                },
                "dailyLimitWarningThresholdPercentage": {
                    "type": "number",
                    "description": "The percentage threshold of the daily quota at which a Datadog warning event is generated.\n"
                },
                "exclusionFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getLogsIndexesLogsIndexExclusionFilter:getLogsIndexesLogsIndexExclusionFilter"
                    },
                    "description": "List of exclusion filters.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getLogsIndexesLogsIndexFilter:getLogsIndexesLogsIndexFilter"
                    },
                    "description": "Logs filter\n"
                },
                "flexRetentionDays": {
                    "type": "integer",
                    "description": "The total number of days logs are stored in Standard and Flex Tier before being deleted from the index.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the index.\n"
                },
                "retentionDays": {
                    "type": "integer",
                    "description": "The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags for this index. Tags are in `key:value` format.\n"
                }
            },
            "type": "object",
            "required": [
                "dailyLimit",
                "dailyLimitResets",
                "dailyLimitWarningThresholdPercentage",
                "exclusionFilters",
                "filters",
                "flexRetentionDays",
                "name",
                "retentionDays",
                "tags"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getLogsIndexesLogsIndexDailyLimitReset:getLogsIndexesLogsIndexDailyLimitReset": {
            "properties": {
                "resetTime": {
                    "type": "string",
                    "description": "String in `HH:00` format representing the time of day the daily limit should be reset. The hours between 00 and 23 (inclusive).\n"
                },
                "resetUtcOffset": {
                    "type": "string",
                    "description": "String in `(-|+)HH:00` format representing the UTC offset to apply to the given reset time. The hours between -12 and +14 (inclusive).\n"
                }
            },
            "type": "object",
            "required": [
                "resetTime",
                "resetUtcOffset"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getLogsIndexesLogsIndexExclusionFilter:getLogsIndexesLogsIndexExclusionFilter": {
            "properties": {
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getLogsIndexesLogsIndexExclusionFilterFilter:getLogsIndexesLogsIndexExclusionFilterFilter"
                    }
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "A boolean stating if the exclusion is active or not.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the exclusion filter.\n"
                }
            },
            "type": "object",
            "required": [
                "isEnabled",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getLogsIndexesLogsIndexExclusionFilterFilter:getLogsIndexesLogsIndexExclusionFilterFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Only logs matching the filter criteria and the query of the parent index will be considered for this exclusion filter.\n"
                },
                "sampleRate": {
                    "type": "number",
                    "description": "The fraction of logs excluded by the exclusion filter, when active.\n"
                }
            },
            "type": "object",
            "required": [
                "query",
                "sampleRate"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getLogsIndexesLogsIndexFilter:getLogsIndexesLogsIndexFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Logs filter criteria. Only logs matching this filter criteria are considered for this index.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getLogsPipelinesLogsPipeline:getLogsPipelinesLogsPipeline": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description of the pipeline\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getLogsPipelinesLogsPipelineFilter:getLogsPipelinesLogsPipelineFilter"
                    },
                    "description": "Pipelines filter\n"
                },
                "id": {
                    "type": "string",
                    "description": "ID of the pipeline\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Whether or not the pipeline is enabled.\n"
                },
                "isReadOnly": {
                    "type": "boolean",
                    "description": "Whether or not the pipeline can be edited.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the pipeline.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags of the pipeline\n"
                },
                "type": {
                    "type": "string",
                    "description": "Whether or not the pipeline can be edited.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "filters",
                "id",
                "isEnabled",
                "isReadOnly",
                "name",
                "tags",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getLogsPipelinesLogsPipelineFilter:getLogsPipelinesLogsPipelineFilter": {
            "properties": {
                "query": {
                    "type": "string",
                    "description": "Pipeline filter criteria.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMetricActiveTagsAndAggregationsActiveAggregation:getMetricActiveTagsAndAggregationsActiveAggregation": {
            "properties": {
                "space": {
                    "type": "string"
                },
                "time": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "space",
                "time"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorConfigPoliciesMonitorConfigPolicy:getMonitorConfigPoliciesMonitorConfigPolicy": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the monitor config policy\n"
                },
                "policyType": {
                    "type": "string",
                    "description": "The monitor config policy type\n"
                },
                "tagPolicy": {
                    "$ref": "#/types/datadog:index/getMonitorConfigPoliciesMonitorConfigPolicyTagPolicy:getMonitorConfigPoliciesMonitorConfigPolicyTagPolicy",
                    "description": "Config for a tag policy. Only set if \u003cspan pulumi-lang-nodejs=\"`policyType`\" pulumi-lang-dotnet=\"`PolicyType`\" pulumi-lang-go=\"`policyType`\" pulumi-lang-python=\"`policy_type`\" pulumi-lang-yaml=\"`policyType`\" pulumi-lang-java=\"`policyType`\"\u003e`policyType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "policyType",
                "tagPolicy"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorConfigPoliciesMonitorConfigPolicyTagPolicy:getMonitorConfigPoliciesMonitorConfigPolicyTagPolicy": {
            "properties": {
                "tagKey": {
                    "type": "string",
                    "description": "The key of the tag\n"
                },
                "tagKeyRequired": {
                    "type": "boolean",
                    "description": "If a tag key is required for monitor creation\n"
                },
                "validTagValues": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Valid values for the tag\n"
                }
            },
            "type": "object",
            "required": [
                "tagKey",
                "tagKeyRequired",
                "validTagValues"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorMonitorThreshold:getMonitorMonitorThreshold": {
            "properties": {
                "critical": {
                    "type": "string"
                },
                "criticalRecovery": {
                    "type": "string"
                },
                "ok": {
                    "type": "string"
                },
                "unknown": {
                    "type": "string"
                },
                "warning": {
                    "type": "string"
                },
                "warningRecovery": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "critical",
                "criticalRecovery",
                "ok",
                "unknown",
                "warning",
                "warningRecovery"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorMonitorThresholdWindow:getMonitorMonitorThresholdWindow": {
            "properties": {
                "recoveryWindow": {
                    "type": "string"
                },
                "triggerWindow": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "recoveryWindow",
                "triggerWindow"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorSchedulingOption:getMonitorSchedulingOption": {
            "properties": {
                "customSchedules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getMonitorSchedulingOptionCustomSchedule:getMonitorSchedulingOptionCustomSchedule"
                    },
                    "description": "Configuration options for the custom schedules. If \u003cspan pulumi-lang-nodejs=\"`start`\" pulumi-lang-dotnet=\"`Start`\" pulumi-lang-go=\"`start`\" pulumi-lang-python=\"`start`\" pulumi-lang-yaml=\"`start`\" pulumi-lang-java=\"`start`\"\u003e`start`\u003c/span\u003e is omitted, the monitor creation time will be used.\n"
                },
                "evaluationWindows": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getMonitorSchedulingOptionEvaluationWindow:getMonitorSchedulingOptionEvaluationWindow"
                    },
                    "description": "Configuration options for the evaluation window. If \u003cspan pulumi-lang-nodejs=\"`hourStarts`\" pulumi-lang-dotnet=\"`HourStarts`\" pulumi-lang-go=\"`hourStarts`\" pulumi-lang-python=\"`hour_starts`\" pulumi-lang-yaml=\"`hourStarts`\" pulumi-lang-java=\"`hourStarts`\"\u003e`hourStarts`\u003c/span\u003e is set, no other fields may be set. Otherwise, \u003cspan pulumi-lang-nodejs=\"`dayStarts`\" pulumi-lang-dotnet=\"`DayStarts`\" pulumi-lang-go=\"`dayStarts`\" pulumi-lang-python=\"`day_starts`\" pulumi-lang-yaml=\"`dayStarts`\" pulumi-lang-java=\"`dayStarts`\"\u003e`dayStarts`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`monthStarts`\" pulumi-lang-dotnet=\"`MonthStarts`\" pulumi-lang-go=\"`monthStarts`\" pulumi-lang-python=\"`month_starts`\" pulumi-lang-yaml=\"`monthStarts`\" pulumi-lang-java=\"`monthStarts`\"\u003e`monthStarts`\u003c/span\u003e must be set together.\n"
                }
            },
            "type": "object",
            "required": [
                "customSchedules",
                "evaluationWindows"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorSchedulingOptionCustomSchedule:getMonitorSchedulingOptionCustomSchedule": {
            "properties": {
                "recurrences": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getMonitorSchedulingOptionCustomScheduleRecurrence:getMonitorSchedulingOptionCustomScheduleRecurrence"
                    },
                    "description": "A list of recurrence definitions. Length must be 1.\n"
                }
            },
            "type": "object",
            "required": [
                "recurrences"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorSchedulingOptionCustomScheduleRecurrence:getMonitorSchedulingOptionCustomScheduleRecurrence": {
            "properties": {
                "rrule": {
                    "type": "string",
                    "description": "Must be a valid rrule. See api docs for supported fields\n"
                },
                "start": {
                    "type": "string",
                    "description": "Time to start recurrence cycle. Similar to DTSTART. Expected format 'YYYY-MM-DDThh:mm:ss'\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "'tz database' format. ex: 'America/New_York' or UTC\n"
                }
            },
            "type": "object",
            "required": [
                "rrule",
                "start",
                "timezone"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorSchedulingOptionEvaluationWindow:getMonitorSchedulingOptionEvaluationWindow": {
            "properties": {
                "dayStarts": {
                    "type": "string",
                    "description": "The time of the day at which a one day cumulative evaluation window starts. Must be defined in UTC time in `HH:mm` format.\n"
                },
                "hourStarts": {
                    "type": "integer",
                    "description": "The minute of the hour at which a one hour cumulative evaluation window starts. Must be between 0 and 59.\n"
                },
                "monthStarts": {
                    "type": "integer",
                    "description": "The day of the month at which a one month cumulative evaluation window starts. Must be a value of 1.\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "The timezone for the cumulative evaluation window start time.\n"
                }
            },
            "type": "object",
            "required": [
                "dayStarts",
                "hourStarts",
                "monthStarts",
                "timezone"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getMonitorsMonitor:getMonitorsMonitor": {
            "properties": {
                "id": {
                    "type": "integer",
                    "description": "ID of the monitor\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the monitor\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the monitor.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getOrganizationSettingsSetting:getOrganizationSettingsSetting": {
            "properties": {
                "privateWidgetShare": {
                    "type": "boolean",
                    "description": "Whether or not the organization users can share widgets outside of Datadog.\n"
                },
                "samlAutocreateAccessRole": {
                    "type": "string",
                    "description": "The access role of the user. Options are \u003cspan pulumi-lang-nodejs=\"`st`\" pulumi-lang-dotnet=\"`St`\" pulumi-lang-go=\"`st`\" pulumi-lang-python=\"`st`\" pulumi-lang-yaml=\"`st`\" pulumi-lang-java=\"`st`\"\u003e`st`\u003c/span\u003e (standard user), \u003cspan pulumi-lang-nodejs=\"`adm`\" pulumi-lang-dotnet=\"`Adm`\" pulumi-lang-go=\"`adm`\" pulumi-lang-python=\"`adm`\" pulumi-lang-yaml=\"`adm`\" pulumi-lang-java=\"`adm`\"\u003e`adm`\u003c/span\u003e (admin user), or \u003cspan pulumi-lang-nodejs=\"`ro`\" pulumi-lang-dotnet=\"`Ro`\" pulumi-lang-go=\"`ro`\" pulumi-lang-python=\"`ro`\" pulumi-lang-yaml=\"`ro`\" pulumi-lang-java=\"`ro`\"\u003e`ro`\u003c/span\u003e (read-only user). Allowed enum values: \u003cspan pulumi-lang-nodejs=\"`st`\" pulumi-lang-dotnet=\"`St`\" pulumi-lang-go=\"`st`\" pulumi-lang-python=\"`st`\" pulumi-lang-yaml=\"`st`\" pulumi-lang-java=\"`st`\"\u003e`st`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`adm`\" pulumi-lang-dotnet=\"`Adm`\" pulumi-lang-go=\"`adm`\" pulumi-lang-python=\"`adm`\" pulumi-lang-yaml=\"`adm`\" pulumi-lang-java=\"`adm`\"\u003e`adm`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ro`\" pulumi-lang-dotnet=\"`Ro`\" pulumi-lang-go=\"`ro`\" pulumi-lang-python=\"`ro`\" pulumi-lang-yaml=\"`ro`\" pulumi-lang-java=\"`ro`\"\u003e`ro`\u003c/span\u003e, `ERROR`.\n"
                },
                "samlAutocreateUsersDomains": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getOrganizationSettingsSettingSamlAutocreateUsersDomain:getOrganizationSettingsSettingSamlAutocreateUsersDomain"
                    },
                    "description": "List of domains where the SAML automated user creation is enabled.\n"
                },
                "samlCanBeEnabled": {
                    "type": "boolean",
                    "description": "Whether or not SAML can be enabled for this organization.\n"
                },
                "samlIdpEndpoint": {
                    "type": "string",
                    "description": "Identity provider endpoint for SAML authentication.\n"
                },
                "samlIdpInitiatedLogins": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getOrganizationSettingsSettingSamlIdpInitiatedLogin:getOrganizationSettingsSettingSamlIdpInitiatedLogin"
                    },
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization.\n"
                },
                "samlIdpMetadataUploaded": {
                    "type": "boolean",
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization.\n"
                },
                "samlLoginUrl": {
                    "type": "string",
                    "description": "URL for SAML logging.\n"
                },
                "samlStrictModes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getOrganizationSettingsSettingSamlStrictMode:getOrganizationSettingsSettingSamlStrictMode"
                    },
                    "description": "Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML.\n"
                },
                "samls": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getOrganizationSettingsSettingSaml:getOrganizationSettingsSettingSaml"
                    },
                    "description": "SAML properties.\n"
                }
            },
            "type": "object",
            "required": [
                "privateWidgetShare",
                "samlAutocreateAccessRole",
                "samlCanBeEnabled",
                "samlIdpEndpoint",
                "samlIdpMetadataUploaded",
                "samlLoginUrl"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getOrganizationSettingsSettingSaml:getOrganizationSettingsSettingSaml": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not SAML is enabled for this organization.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getOrganizationSettingsSettingSamlAutocreateUsersDomain:getOrganizationSettingsSettingSamlAutocreateUsersDomain": {
            "properties": {
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of domains where the SAML automated user creation is enabled.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the automated user creation based on SAML domain is enabled.\n"
                }
            },
            "type": "object",
            "required": [
                "domains",
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getOrganizationSettingsSettingSamlIdpInitiatedLogin:getOrganizationSettingsSettingSamlIdpInitiatedLogin": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not a SAML identity provider metadata file was provided to the Datadog organization.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getOrganizationSettingsSettingSamlStrictMode:getOrganizationSettingsSettingSamlStrictMode": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getReferenceTableFileMetadata:getReferenceTableFileMetadata": {
            "properties": {
                "accessDetails": {
                    "$ref": "#/types/datadog:index/getReferenceTableFileMetadataAccessDetails:getReferenceTableFileMetadataAccessDetails",
                    "description": "Cloud storage access configuration. Only present for cloud storage sources (S3, GCS, Azure).\n"
                },
                "errorMessage": {
                    "type": "string",
                    "description": "Error message from the last sync attempt, if any.\n"
                },
                "errorRowCount": {
                    "type": "integer",
                    "description": "The number of rows that failed to sync.\n"
                },
                "errorType": {
                    "type": "string",
                    "description": "The type of error that occurred during file processing. Only present for cloud storage sources.\n"
                },
                "syncEnabled": {
                    "type": "boolean",
                    "description": "Whether automatic sync is enabled for this table. Only present for cloud storage sources (S3, GCS, Azure).\n"
                }
            },
            "type": "object",
            "required": [
                "errorMessage",
                "errorRowCount",
                "errorType",
                "syncEnabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getReferenceTableFileMetadataAccessDetails:getReferenceTableFileMetadataAccessDetails": {
            "properties": {
                "awsDetail": {
                    "$ref": "#/types/datadog:index/getReferenceTableFileMetadataAccessDetailsAwsDetail:getReferenceTableFileMetadataAccessDetailsAwsDetail",
                    "description": "AWS S3 access configuration.\n"
                },
                "azureDetail": {
                    "$ref": "#/types/datadog:index/getReferenceTableFileMetadataAccessDetailsAzureDetail:getReferenceTableFileMetadataAccessDetailsAzureDetail",
                    "description": "Azure Blob Storage access configuration.\n"
                },
                "gcpDetail": {
                    "$ref": "#/types/datadog:index/getReferenceTableFileMetadataAccessDetailsGcpDetail:getReferenceTableFileMetadataAccessDetailsGcpDetail",
                    "description": "Google Cloud Storage access configuration.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getReferenceTableFileMetadataAccessDetailsAwsDetail:getReferenceTableFileMetadataAccessDetailsAwsDetail": {
            "properties": {
                "awsAccountId": {
                    "type": "string",
                    "description": "The ID of the AWS account.\n"
                },
                "awsBucketName": {
                    "type": "string",
                    "description": "The name of the AWS S3 bucket.\n"
                },
                "filePath": {
                    "type": "string",
                    "description": "The relative file path from the AWS S3 bucket root to the CSV file.\n"
                }
            },
            "type": "object",
            "required": [
                "awsAccountId",
                "awsBucketName",
                "filePath"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getReferenceTableFileMetadataAccessDetailsAzureDetail:getReferenceTableFileMetadataAccessDetailsAzureDetail": {
            "properties": {
                "azureClientId": {
                    "type": "string",
                    "description": "The Azure client ID (application ID).\n"
                },
                "azureContainerName": {
                    "type": "string",
                    "description": "The name of the Azure container.\n"
                },
                "azureStorageAccountName": {
                    "type": "string",
                    "description": "The name of the Azure storage account.\n"
                },
                "azureTenantId": {
                    "type": "string",
                    "description": "The ID of the Azure tenant.\n"
                },
                "filePath": {
                    "type": "string",
                    "description": "The relative file path from the Azure container root to the CSV file.\n"
                }
            },
            "type": "object",
            "required": [
                "azureClientId",
                "azureContainerName",
                "azureStorageAccountName",
                "azureTenantId",
                "filePath"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getReferenceTableFileMetadataAccessDetailsGcpDetail:getReferenceTableFileMetadataAccessDetailsGcpDetail": {
            "properties": {
                "filePath": {
                    "type": "string",
                    "description": "The relative file path from the GCS bucket root to the CSV file.\n"
                },
                "gcpBucketName": {
                    "type": "string",
                    "description": "The name of the GCP bucket.\n"
                },
                "gcpProjectId": {
                    "type": "string",
                    "description": "The ID of the GCP project.\n"
                },
                "gcpServiceAccountEmail": {
                    "type": "string",
                    "description": "The email of the GCP service account used to access the bucket.\n"
                }
            },
            "type": "object",
            "required": [
                "filePath",
                "gcpBucketName",
                "gcpProjectId",
                "gcpServiceAccountEmail"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getReferenceTableRowsRow:getReferenceTableRowsRow": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "The primary key value of the row.\n"
                },
                "values": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Map of field names to values for this row. All values are returned as strings.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "values"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getReferenceTableSchema:getReferenceTableSchema": {
            "properties": {
                "fields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getReferenceTableSchemaField:getReferenceTableSchemaField"
                    },
                    "description": "List of fields in the table schema.\n"
                },
                "primaryKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of field names that serve as primary keys for the table.\n"
                }
            },
            "type": "object",
            "required": [
                "primaryKeys"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getReferenceTableSchemaField:getReferenceTableSchemaField": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the field.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The data type of the field (e.g., STRING, INT32).\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getRoleUsersRoleUser:getRoleUsersRoleUser": {
            "properties": {
                "roleId": {
                    "type": "string"
                },
                "userId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "roleId",
                "userId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getRolesRole:getRolesRole": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the Datadog role\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Datadog role\n"
                },
                "userCount": {
                    "type": "integer",
                    "description": "Number of users that have this role.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "userCount"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getRumRetentionFiltersRetentionFilter:getRumRetentionFiltersRetentionFilter": {
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "eventType": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "query": {
                    "type": "string"
                },
                "sampleRate": {
                    "type": "number"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "eventType",
                "id",
                "name",
                "query",
                "sampleRate"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringCriticalAssetsCriticalAsset:getSecurityMonitoringCriticalAssetsCriticalAsset": {
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "query": {
                    "type": "string"
                },
                "ruleQuery": {
                    "type": "string"
                },
                "severity": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "id",
                "query",
                "ruleQuery",
                "severity",
                "tags"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringFiltersFilter:getSecurityMonitoringFiltersFilter": {
            "properties": {
                "exclusionFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringFiltersFilterExclusionFilter:getSecurityMonitoringFiltersFilterExclusionFilter"
                    },
                    "description": "Exclusion filters to exclude some logs from the security filter.\n"
                },
                "filteredDataType": {
                    "type": "string",
                    "description": "The filtered data type.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Whether the security filter is enabled.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the security filter.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query of the security filter.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "The version of the security filter.\n"
                }
            },
            "type": "object",
            "required": [
                "isEnabled",
                "name",
                "query",
                "version"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringFiltersFilterExclusionFilter:getSecurityMonitoringFiltersFilterExclusionFilter": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Exclusion filter name.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Exclusion filter query. Logs that match this query are excluded from the security filter.\n"
                }
            },
            "type": "object",
            "required": [
                "name",
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRule:getSecurityMonitoringRulesRule": {
            "properties": {
                "calculatedFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleCalculatedField:getSecurityMonitoringRulesRuleCalculatedField"
                    },
                    "description": "One or more calculated fields. Available only for scheduled rules (in other words, when \u003cspan pulumi-lang-nodejs=\"`schedulingOptions`\" pulumi-lang-dotnet=\"`SchedulingOptions`\" pulumi-lang-go=\"`schedulingOptions`\" pulumi-lang-python=\"`scheduling_options`\" pulumi-lang-yaml=\"`schedulingOptions`\" pulumi-lang-java=\"`schedulingOptions`\"\u003e`schedulingOptions`\u003c/span\u003e is defined).\n"
                },
                "cases": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleCase:getSecurityMonitoringRulesRuleCase"
                    },
                    "description": "Cases for generating signals.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the rule is enabled.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleFilter:getSecurityMonitoringRulesRuleFilter"
                    },
                    "description": "Additional queries to filter matched events before they are processed. **Note**: This field is deprecated for log detection, signal correlation, and workload security rules.\n"
                },
                "groupSignalsBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Additional grouping to perform on top of the query grouping.\n"
                },
                "hasExtendedTitle": {
                    "type": "boolean",
                    "description": "Whether the notifications include the triggering group-by values in their title.\n"
                },
                "message": {
                    "type": "string",
                    "description": "Message for generated signals.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule.\n"
                },
                "options": {
                    "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptions:getSecurityMonitoringRulesRuleOptions",
                    "description": "Options on rules.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleQuery:getSecurityMonitoringRulesRuleQuery"
                    },
                    "description": "Queries for selecting logs which are part of the rule.\n"
                },
                "referenceTables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleReferenceTable:getSecurityMonitoringRulesRuleReferenceTable"
                    },
                    "description": "Reference tables for filtering query results.\n"
                },
                "schedulingOptions": {
                    "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleSchedulingOptions:getSecurityMonitoringRulesRuleSchedulingOptions",
                    "description": "Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs in real time on ingested logs.\n"
                },
                "signalQueries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleSignalQuery:getSecurityMonitoringRulesRuleSignalQuery"
                    },
                    "description": "Queries for selecting logs which are part of the rule.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags for generated signals. Note: if default tags are present at provider level, they will be added to this resource.\n"
                },
                "thirdPartyCases": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleThirdPartyCase:getSecurityMonitoringRulesRuleThirdPartyCase"
                    },
                    "description": "Cases for generating signals for third-party rules. Only required and accepted for third-party rules\n"
                },
                "type": {
                    "type": "string",
                    "description": "The rule type.\n"
                }
            },
            "type": "object",
            "required": [
                "message",
                "name",
                "tags"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleCalculatedField:getSecurityMonitoringRulesRuleCalculatedField": {
            "properties": {
                "expression": {
                    "type": "string",
                    "description": "Expression.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Field name.\n"
                }
            },
            "type": "object",
            "required": [
                "expression",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleCase:getSecurityMonitoringRulesRuleCase": {
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleCaseAction:getSecurityMonitoringRulesRuleCaseAction"
                    },
                    "description": "Action to perform when the case trigger\n"
                },
                "condition": {
                    "type": "string",
                    "description": "A rule case contains logical operations (`\u003e`,`\u003e=`, `\u0026\u0026`, `||`) to determine if a signal should be generated based on the event counts in the previously defined queries.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the case.\n"
                },
                "notifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Notification targets for each rule case.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Severity of the Security Signal.\n"
                }
            },
            "type": "object",
            "required": [
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleCaseAction:getSecurityMonitoringRulesRuleCaseAction": {
            "properties": {
                "options": {
                    "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleCaseActionOptions:getSecurityMonitoringRulesRuleCaseActionOptions",
                    "description": "Options for the action.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of action to perform when the case triggers.\n"
                }
            },
            "type": "object",
            "required": [
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleCaseActionOptions:getSecurityMonitoringRulesRuleCaseActionOptions": {
            "properties": {
                "duration": {
                    "type": "integer",
                    "description": "Duration of the action in seconds.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getSecurityMonitoringRulesRuleFilter:getSecurityMonitoringRulesRuleFilter": {
            "properties": {
                "action": {
                    "type": "string",
                    "description": "The type of filtering action.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query for selecting logs to apply the filtering action.\n"
                }
            },
            "type": "object",
            "required": [
                "action",
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptions:getSecurityMonitoringRulesRuleOptions": {
            "properties": {
                "anomalyDetectionOptions": {
                    "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptionsAnomalyDetectionOptions:getSecurityMonitoringRulesRuleOptionsAnomalyDetectionOptions",
                    "description": "Options for rules using the anomaly detection method.\n"
                },
                "decreaseCriticalityBasedOnEnv": {
                    "type": "boolean",
                    "description": "If true, signals in non-production environments have a lower severity than what is defined by the rule case, which can reduce noise. The decrement is applied when the environment tag of the signal starts with \u003cspan pulumi-lang-nodejs=\"`staging`\" pulumi-lang-dotnet=\"`Staging`\" pulumi-lang-go=\"`staging`\" pulumi-lang-python=\"`staging`\" pulumi-lang-yaml=\"`staging`\" pulumi-lang-java=\"`staging`\"\u003e`staging`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`test`\" pulumi-lang-dotnet=\"`Test`\" pulumi-lang-go=\"`test`\" pulumi-lang-python=\"`test`\" pulumi-lang-yaml=\"`test`\" pulumi-lang-java=\"`test`\"\u003e`test`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`dev`\" pulumi-lang-dotnet=\"`Dev`\" pulumi-lang-go=\"`dev`\" pulumi-lang-python=\"`dev`\" pulumi-lang-yaml=\"`dev`\" pulumi-lang-java=\"`dev`\"\u003e`dev`\u003c/span\u003e. Only available when the rule type is \u003cspan pulumi-lang-nodejs=\"`logDetection`\" pulumi-lang-dotnet=\"`LogDetection`\" pulumi-lang-go=\"`logDetection`\" pulumi-lang-python=\"`log_detection`\" pulumi-lang-yaml=\"`logDetection`\" pulumi-lang-java=\"`logDetection`\"\u003e`logDetection`\u003c/span\u003e.\n"
                },
                "detectionMethod": {
                    "type": "string",
                    "description": "The detection method.\n"
                },
                "evaluationWindow": {
                    "type": "integer",
                    "description": "A time window is specified to match when at least one of the cases matches true. This is a sliding window and evaluates in real time.\n"
                },
                "impossibleTravelOptions": {
                    "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptionsImpossibleTravelOptions:getSecurityMonitoringRulesRuleOptionsImpossibleTravelOptions",
                    "description": "Options for rules using the impossible travel detection method.\n"
                },
                "keepAlive": {
                    "type": "integer",
                    "description": "Once a signal is generated, the signal will remain “open” if a case is matched at least once within this keep alive window (in seconds).\n"
                },
                "maxSignalDuration": {
                    "type": "integer",
                    "description": "A signal will “close” regardless of the query being matched once the time exceeds the maximum duration (in seconds). This time is calculated from the first seen timestamp.\n"
                },
                "newValueOptions": {
                    "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptionsNewValueOptions:getSecurityMonitoringRulesRuleOptionsNewValueOptions",
                    "description": "New value rules specific options.\n"
                },
                "sequenceDetectionOptions": {
                    "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptions:getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptions",
                    "description": "Options for rules using the sequence detection method.\n"
                },
                "thirdPartyRuleOptions": {
                    "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptionsThirdPartyRuleOptions:getSecurityMonitoringRulesRuleOptionsThirdPartyRuleOptions",
                    "description": "Options for rules using the third-party detection method.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptionsAnomalyDetectionOptions:getSecurityMonitoringRulesRuleOptionsAnomalyDetectionOptions": {
            "properties": {
                "bucketDuration": {
                    "type": "integer",
                    "description": "Duration in seconds of the time buckets used to aggregate events matched by the rule. Valid values are 300, 600, 900, 1800, 3600, 10800.\n"
                },
                "detectionTolerance": {
                    "type": "integer",
                    "description": "An optional parameter that sets how permissive anomaly detection is. Higher values require higher deviations before triggering a signal. Valid values are 1, 2, 3, 4, 5.\n"
                },
                "instantaneousBaseline": {
                    "type": "boolean",
                    "description": "When set to true, Datadog uses previous values that fall within the defined learning window to construct the baseline, enabling the system to establish an accurate baseline more rapidly rather than relying solely on gradual learning over time.\n"
                },
                "learningDuration": {
                    "type": "integer",
                    "description": "Learning duration in hours. Anomaly detection waits for at least this amount of historical data before it starts evaluating. Valid values are 1, 6, 12, 24, 48, 168, 336.\n"
                },
                "learningPeriodBaseline": {
                    "type": "integer",
                    "description": "An optional override baseline to apply while the rule is in the learning period. Must be greater than or equal to 0.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptionsImpossibleTravelOptions:getSecurityMonitoringRulesRuleOptionsImpossibleTravelOptions": {
            "properties": {
                "baselineUserLocations": {
                    "type": "boolean",
                    "description": "If true, signals are suppressed for the first 24 hours. During that time, Datadog learns the user's regular access locations. This can be helpful to reduce noise and infer VPN usage or credentialed API access.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptionsNewValueOptions:getSecurityMonitoringRulesRuleOptionsNewValueOptions": {
            "properties": {
                "forgetAfter": {
                    "type": "integer",
                    "description": "The duration in days after which a learned value is forgotten.\n"
                },
                "instantaneousBaseline": {
                    "type": "boolean",
                    "description": "When set to true, Datadog uses previous values that fall within the defined learning window to construct the baseline, enabling the system to establish an accurate baseline more rapidly rather than relying solely on gradual learning over time.\n"
                },
                "learningDuration": {
                    "type": "integer",
                    "description": "The duration in days during which values are learned, and after which signals will be generated for values that weren't learned. If set to 0, a signal will be generated for all new values after the first value is learned.\n"
                },
                "learningMethod": {
                    "type": "string",
                    "description": "The learning method used to determine when signals should be generated for values that weren't learned.\n"
                },
                "learningThreshold": {
                    "type": "integer",
                    "description": "A number of occurrences after which signals are generated for values that weren't learned.\n"
                }
            },
            "type": "object",
            "required": [
                "forgetAfter"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptions:getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptions": {
            "properties": {
                "stepTransitions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptionsStepTransition:getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptionsStepTransition"
                    },
                    "description": "Edges of the step graph.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptionsStep:getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptionsStep"
                    },
                    "description": "Sequence steps.\n"
                }
            },
            "type": "object"
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptionsStep:getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptionsStep": {
            "properties": {
                "condition": {
                    "type": "string",
                    "description": "Condition for the step to match.\n"
                },
                "evaluationWindow": {
                    "type": "integer",
                    "description": "Evaluation window for the step.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Unique name of the step.\n"
                }
            },
            "type": "object",
            "required": [
                "condition",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptionsStepTransition:getSecurityMonitoringRulesRuleOptionsSequenceDetectionOptionsStepTransition": {
            "properties": {
                "child": {
                    "type": "string",
                    "description": "Child step name.\n"
                },
                "evaluationWindow": {
                    "type": "integer",
                    "description": "Maximum time allowed to transition from parent to child.\n"
                },
                "parent": {
                    "type": "string",
                    "description": "Parent step name.\n"
                }
            },
            "type": "object",
            "required": [
                "child",
                "parent"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptionsThirdPartyRuleOptions:getSecurityMonitoringRulesRuleOptionsThirdPartyRuleOptions": {
            "properties": {
                "defaultNotifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Notification targets for the default rule case, when none of the third-party cases match.\n"
                },
                "defaultStatus": {
                    "type": "string",
                    "description": "Severity of the default rule case, when none of the third-party cases match.\n"
                },
                "rootQueries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleOptionsThirdPartyRuleOptionsRootQuery:getSecurityMonitoringRulesRuleOptionsThirdPartyRuleOptionsRootQuery"
                    },
                    "description": "Queries to be combined with third-party case queries. Each of them can have different group by fields, to aggregate differently based on the type of alert.\n"
                },
                "signalTitleTemplate": {
                    "type": "string",
                    "description": "A template for the signal title; if omitted, the title is generated based on the case name.\n"
                }
            },
            "type": "object",
            "required": [
                "defaultStatus",
                "rootQueries"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleOptionsThirdPartyRuleOptionsRootQuery:getSecurityMonitoringRulesRuleOptionsThirdPartyRuleOptionsRootQuery": {
            "properties": {
                "groupByFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Fields to group by. If empty, each log triggers a signal.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query to filter logs.\n"
                }
            },
            "type": "object",
            "required": [
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleQuery:getSecurityMonitoringRulesRuleQuery": {
            "properties": {
                "agentRules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getSecurityMonitoringRulesRuleQueryAgentRule:getSecurityMonitoringRulesRuleQueryAgentRule"
                    },
                    "description": "**Deprecated**. It won't be applied anymore.\n",
                    "deprecationMessage": "\u003cspan pulumi-lang-nodejs=\"`agentRule`\" pulumi-lang-dotnet=\"`AgentRule`\" pulumi-lang-go=\"`agentRule`\" pulumi-lang-python=\"`agent_rule`\" pulumi-lang-yaml=\"`agentRule`\" pulumi-lang-java=\"`agentRule`\"\u003e`agentRule`\u003c/span\u003e has been deprecated in favor of new Agent Rule resource."
                },
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation type. For Signal Correlation rules, it must be event_count.\n"
                },
                "dataSource": {
                    "type": "string",
                    "description": "Source of events.\n"
                },
                "distinctFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Field for which the cardinality is measured. Sent as an array.\n"
                },
                "groupByFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Fields to group by.\n"
                },
                "hasOptionalGroupByFields": {
                    "type": "boolean",
                    "description": "When false, events without a group-by value are ignored by the rule. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values.\n"
                },
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of indexes to run the query on when the data source is \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e. Supports only one element. Used only for scheduled rules (in other words, when \u003cspan pulumi-lang-nodejs=\"`schedulingOptions`\" pulumi-lang-dotnet=\"`SchedulingOptions`\" pulumi-lang-go=\"`schedulingOptions`\" pulumi-lang-python=\"`scheduling_options`\" pulumi-lang-yaml=\"`schedulingOptions`\" pulumi-lang-java=\"`schedulingOptions`\"\u003e`schedulingOptions`\u003c/span\u003e is defined).\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The target field to aggregate over when using the \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e aggregations.\n",
                    "deprecationMessage": "Configure \u003cspan pulumi-lang-nodejs=\"`metrics`\" pulumi-lang-dotnet=\"`Metrics`\" pulumi-lang-go=\"`metrics`\" pulumi-lang-python=\"`metrics`\" pulumi-lang-yaml=\"`metrics`\" pulumi-lang-java=\"`metrics`\"\u003e`metrics`\u003c/span\u003e instead. This attribute will be removed in the next major version of the provider."
                },
                "metrics": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Group of target fields to aggregate over when using the \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregations. The \u003cspan pulumi-lang-nodejs=\"`sum`\" pulumi-lang-dotnet=\"`Sum`\" pulumi-lang-go=\"`sum`\" pulumi-lang-python=\"`sum`\" pulumi-lang-yaml=\"`sum`\" pulumi-lang-java=\"`sum`\"\u003e`sum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`max`\" pulumi-lang-dotnet=\"`Max`\" pulumi-lang-go=\"`max`\" pulumi-lang-python=\"`max`\" pulumi-lang-yaml=\"`max`\" pulumi-lang-java=\"`max`\"\u003e`max`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`geoData`\" pulumi-lang-dotnet=\"`GeoData`\" pulumi-lang-go=\"`geoData`\" pulumi-lang-python=\"`geo_data`\" pulumi-lang-yaml=\"`geoData`\" pulumi-lang-java=\"`geoData`\"\u003e`geoData`\u003c/span\u003e aggregations only accept one value in this list, whereas the \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregation accepts up to five values.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the query. Not compatible with \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregations.\n"
                },
                "query": {
                    "type": "string",
                    "description": "Query to run on logs.\n"
                }
            },
            "type": "object",
            "required": [
                "metrics",
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleQueryAgentRule:getSecurityMonitoringRulesRuleQueryAgentRule": {
            "properties": {
                "agentRuleId": {
                    "type": "string",
                    "description": "**Deprecated**. It won't be applied anymore.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "**Deprecated**. It won't be applied anymore.\n"
                }
            },
            "type": "object",
            "required": [
                "agentRuleId",
                "expression"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleReferenceTable:getSecurityMonitoringRulesRuleReferenceTable": {
            "properties": {
                "checkPresence": {
                    "type": "boolean",
                    "description": "Whether to include or exclude logs that match the reference table.\n"
                },
                "columnName": {
                    "type": "string",
                    "description": "The name of the column in the reference table.\n"
                },
                "logFieldPath": {
                    "type": "string",
                    "description": "The field in the log that should be matched against the reference table.\n"
                },
                "ruleQueryName": {
                    "type": "string",
                    "description": "The name of the query to filter.\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "The name of the reference table.\n"
                }
            },
            "type": "object",
            "required": [
                "checkPresence",
                "columnName",
                "logFieldPath",
                "ruleQueryName",
                "tableName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleSchedulingOptions:getSecurityMonitoringRulesRuleSchedulingOptions": {
            "properties": {
                "rrule": {
                    "type": "string",
                    "description": "Schedule for the rule queries, written in RRULE syntax. See [RFC](https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html) for syntax reference.\n"
                },
                "start": {
                    "type": "string",
                    "description": "Start date for the schedule, in ISO 8601 format without timezone.\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "Time zone of the start date, in the [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) format.\n"
                }
            },
            "type": "object",
            "required": [
                "rrule",
                "start",
                "timezone"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleSignalQuery:getSecurityMonitoringRulesRuleSignalQuery": {
            "properties": {
                "aggregation": {
                    "type": "string",
                    "description": "The aggregation type. For Signal Correlation rules, it must be event_count.\n"
                },
                "correlatedByFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Fields to correlate by.\n"
                },
                "correlatedQueryIndex": {
                    "type": "string",
                    "description": "Index of the rule query used to retrieve the correlated field. An empty string applies correlation on the non-projected per query attributes of the rule.\n"
                },
                "defaultRuleId": {
                    "type": "string",
                    "description": "Default Rule ID of the signal to correlate. This value is READ-ONLY.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the query. Not compatible with \u003cspan pulumi-lang-nodejs=\"`newValue`\" pulumi-lang-dotnet=\"`NewValue`\" pulumi-lang-go=\"`newValue`\" pulumi-lang-python=\"`new_value`\" pulumi-lang-yaml=\"`newValue`\" pulumi-lang-java=\"`newValue`\"\u003e`newValue`\u003c/span\u003e aggregations.\n"
                },
                "ruleId": {
                    "type": "string",
                    "description": "Rule ID of the signal to correlate.\n"
                }
            },
            "type": "object",
            "required": [
                "ruleId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringRulesRuleThirdPartyCase:getSecurityMonitoringRulesRuleThirdPartyCase": {
            "properties": {
                "name": {
                    "type": "string",
                    "description": "Name of the case.\n"
                },
                "notifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Notification targets for each rule case.\n"
                },
                "query": {
                    "type": "string",
                    "description": "A query to associate a third-party event to this case.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Severity of the Security Signal.\n"
                }
            },
            "type": "object",
            "required": [
                "status"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSecurityMonitoringSuppressionsSuppression:getSecurityMonitoringSuppressionsSuppression": {
            "properties": {
                "dataExclusionQuery": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "expirationDate": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "ruleQuery": {
                    "type": "string"
                },
                "startDate": {
                    "type": "string"
                },
                "suppressionQuery": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "dataExclusionQuery",
                "description",
                "enabled",
                "expirationDate",
                "id",
                "name",
                "ruleQuery",
                "startDate",
                "suppressionQuery",
                "tags"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getServiceLevelObjectiveQuery:getServiceLevelObjectiveQuery": {
            "properties": {
                "denominator": {
                    "type": "string",
                    "description": "The sum of the \u003cspan pulumi-lang-nodejs=\"`total`\" pulumi-lang-dotnet=\"`Total`\" pulumi-lang-go=\"`total`\" pulumi-lang-python=\"`total`\" pulumi-lang-yaml=\"`total`\" pulumi-lang-java=\"`total`\"\u003e`total`\u003c/span\u003e events.\n"
                },
                "numerator": {
                    "type": "string",
                    "description": "The sum of all the \u003cspan pulumi-lang-nodejs=\"`good`\" pulumi-lang-dotnet=\"`Good`\" pulumi-lang-go=\"`good`\" pulumi-lang-python=\"`good`\" pulumi-lang-yaml=\"`good`\" pulumi-lang-java=\"`good`\"\u003e`good`\u003c/span\u003e events.\n"
                }
            },
            "type": "object",
            "required": [
                "denominator",
                "numerator"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getServiceLevelObjectivesSlo:getServiceLevelObjectivesSlo": {
            "properties": {
                "id": {
                    "type": "string",
                    "description": "ID of the Datadog service level objective\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Datadog service level objective\n"
                },
                "type": {
                    "type": "string",
                    "description": "The type of the service level objective. The mapping from these types to the types found in the Datadog Web UI can be found in the Datadog API [documentation page](https://docs.datadoghq.com/api/v1/service-level-objectives/#create-a-slo-object). Available options to choose from are: \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e.\n"
                }
            },
            "type": "object",
            "required": [
                "id",
                "name",
                "type"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getSoftwareCatalogEntity:getSoftwareCatalogEntity": {
            "properties": {
                "displayName": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "kind": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "namespace": {
                    "type": "string"
                },
                "owner": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "type": "object",
            "required": [
                "displayName",
                "id",
                "kind",
                "name",
                "namespace",
                "owner",
                "tags"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTagPipelineRulesetRule:getTagPipelineRulesetRule": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the rule is enabled.\n"
                },
                "mapping": {
                    "$ref": "#/types/datadog:index/getTagPipelineRulesetRuleMapping:getTagPipelineRulesetRuleMapping",
                    "description": "The mapping configuration for the rule.\n"
                },
                "metadata": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Rule metadata key-value pairs.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule.\n"
                },
                "query": {
                    "$ref": "#/types/datadog:index/getTagPipelineRulesetRuleQuery:getTagPipelineRulesetRuleQuery",
                    "description": "The query configuration for the rule.\n"
                },
                "referenceTable": {
                    "$ref": "#/types/datadog:index/getTagPipelineRulesetRuleReferenceTable:getTagPipelineRulesetRuleReferenceTable",
                    "description": "The reference table configuration for the rule.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled",
                "metadata",
                "name"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTagPipelineRulesetRuleMapping:getTagPipelineRulesetRuleMapping": {
            "properties": {
                "destinationKey": {
                    "type": "string",
                    "description": "The destination key for the mapping.\n"
                },
                "ifNotExists": {
                    "type": "boolean",
                    "description": "Whether to apply the mapping only if the destination key doesn't exist.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`ifTagExists`\" pulumi-lang-dotnet=\"`IfTagExists`\" pulumi-lang-go=\"`ifTagExists`\" pulumi-lang-python=\"`if_tag_exists`\" pulumi-lang-yaml=\"`ifTagExists`\" pulumi-lang-java=\"`ifTagExists`\"\u003e`ifTagExists`\u003c/span\u003e instead. This field will be removed in a future release."
                },
                "ifTagExists": {
                    "type": "string",
                    "description": "Behavior when the tag already exists. Valid values: \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e (append to the existing tag value), \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e (replace existing tag value), \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e (never apply if tag already exists). Valid values are \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e.\n"
                },
                "sourceKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The source keys for the mapping.\n"
                }
            },
            "type": "object",
            "required": [
                "destinationKey",
                "ifNotExists",
                "ifTagExists",
                "sourceKeys"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTagPipelineRulesetRuleQuery:getTagPipelineRulesetRuleQuery": {
            "properties": {
                "addition": {
                    "$ref": "#/types/datadog:index/getTagPipelineRulesetRuleQueryAddition:getTagPipelineRulesetRuleQueryAddition",
                    "description": "The addition configuration for the query.\n"
                },
                "caseInsensitivity": {
                    "type": "boolean",
                    "description": "Whether the query matching is case insensitive.\n"
                },
                "ifNotExists": {
                    "type": "boolean",
                    "description": "Whether to apply the query only if the key doesn't exist.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`ifTagExists`\" pulumi-lang-dotnet=\"`IfTagExists`\" pulumi-lang-go=\"`ifTagExists`\" pulumi-lang-python=\"`if_tag_exists`\" pulumi-lang-yaml=\"`ifTagExists`\" pulumi-lang-java=\"`ifTagExists`\"\u003e`ifTagExists`\u003c/span\u003e instead. This field will be removed in a future release."
                },
                "ifTagExists": {
                    "type": "string",
                    "description": "Behavior when the tag already exists. Valid values: \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e (append to the existing tag value), \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e (replace existing tag value), \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e (never apply if tag already exists). Valid values are \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query string.\n"
                }
            },
            "type": "object",
            "required": [
                "caseInsensitivity",
                "ifNotExists",
                "ifTagExists",
                "query"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTagPipelineRulesetRuleQueryAddition:getTagPipelineRulesetRuleQueryAddition": {
            "properties": {
                "key": {
                    "type": "string",
                    "description": "The key to add.\n"
                },
                "value": {
                    "type": "string",
                    "description": "The value to add.\n"
                }
            },
            "type": "object",
            "required": [
                "key",
                "value"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTagPipelineRulesetRuleReferenceTable:getTagPipelineRulesetRuleReferenceTable": {
            "properties": {
                "caseInsensitivity": {
                    "type": "boolean",
                    "description": "Whether the reference table lookup is case insensitive.\n"
                },
                "fieldPairs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/getTagPipelineRulesetRuleReferenceTableFieldPair:getTagPipelineRulesetRuleReferenceTableFieldPair"
                    },
                    "description": "The field pairs for the reference table.\n"
                },
                "ifNotExists": {
                    "type": "boolean",
                    "description": "Whether to apply the reference table only if the key doesn't exist.\n",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`ifTagExists`\" pulumi-lang-dotnet=\"`IfTagExists`\" pulumi-lang-go=\"`ifTagExists`\" pulumi-lang-python=\"`if_tag_exists`\" pulumi-lang-yaml=\"`ifTagExists`\" pulumi-lang-java=\"`ifTagExists`\"\u003e`ifTagExists`\u003c/span\u003e instead. This field will be removed in a future release."
                },
                "ifTagExists": {
                    "type": "string",
                    "description": "Behavior when the tag already exists. Valid values: \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e (append to the existing tag value), \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e (replace existing tag value), \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e (never apply if tag already exists). Valid values are \u003cspan pulumi-lang-nodejs=\"`append`\" pulumi-lang-dotnet=\"`Append`\" pulumi-lang-go=\"`append`\" pulumi-lang-python=\"`append`\" pulumi-lang-yaml=\"`append`\" pulumi-lang-java=\"`append`\"\u003e`append`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`replace`\" pulumi-lang-dotnet=\"`Replace`\" pulumi-lang-go=\"`replace`\" pulumi-lang-python=\"`replace`\" pulumi-lang-yaml=\"`replace`\" pulumi-lang-java=\"`replace`\"\u003e`replace`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`doNotApply`\" pulumi-lang-dotnet=\"`DoNotApply`\" pulumi-lang-go=\"`doNotApply`\" pulumi-lang-python=\"`do_not_apply`\" pulumi-lang-yaml=\"`doNotApply`\" pulumi-lang-java=\"`doNotApply`\"\u003e`doNotApply`\u003c/span\u003e.\n"
                },
                "sourceKeys": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The source keys for the reference table lookup.\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "The name of the reference table.\n"
                }
            },
            "type": "object",
            "required": [
                "caseInsensitivity",
                "ifNotExists",
                "ifTagExists",
                "sourceKeys",
                "tableName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTagPipelineRulesetRuleReferenceTableFieldPair:getTagPipelineRulesetRuleReferenceTableFieldPair": {
            "properties": {
                "inputColumn": {
                    "type": "string",
                    "description": "The input column name.\n"
                },
                "outputKey": {
                    "type": "string",
                    "description": "The output key name.\n"
                }
            },
            "type": "object",
            "required": [
                "inputColumn",
                "outputKey"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamMembershipsTeamMembership:getTeamMembershipsTeamMembership": {
            "properties": {
                "id": {
                    "type": "string"
                },
                "role": {
                    "type": "string"
                },
                "teamId": {
                    "type": "string"
                },
                "userId": {
                    "type": "string"
                }
            },
            "type": "object",
            "required": [
                "id",
                "role",
                "teamId",
                "userId"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRuleEmail:getTeamNotificationRuleEmail": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Flag indicating whether email notifications should be sent\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRuleMsTeams:getTeamNotificationRuleMsTeams": {
            "properties": {
                "connectorName": {
                    "type": "string",
                    "description": "MS Teams connector name\n"
                }
            },
            "type": "object",
            "required": [
                "connectorName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRulePagerduty:getTeamNotificationRulePagerduty": {
            "properties": {
                "serviceName": {
                    "type": "string",
                    "description": "PagerDuty service name\n"
                }
            },
            "type": "object",
            "required": [
                "serviceName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRuleSlack:getTeamNotificationRuleSlack": {
            "properties": {
                "channel": {
                    "type": "string",
                    "description": "Slack channel for notifications\n"
                },
                "workspace": {
                    "type": "string",
                    "description": "Slack workspace for notifications\n"
                }
            },
            "type": "object",
            "required": [
                "channel",
                "workspace"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRulesNotificationRule:getTeamNotificationRulesNotificationRule": {
            "properties": {
                "email": {
                    "$ref": "#/types/datadog:index/getTeamNotificationRulesNotificationRuleEmail:getTeamNotificationRulesNotificationRuleEmail",
                    "description": "The email notification settings.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The ID of the notification rule.\n"
                },
                "msTeams": {
                    "$ref": "#/types/datadog:index/getTeamNotificationRulesNotificationRuleMsTeams:getTeamNotificationRulesNotificationRuleMsTeams",
                    "description": "The MS Teams notification settings.\n"
                },
                "pagerduty": {
                    "$ref": "#/types/datadog:index/getTeamNotificationRulesNotificationRulePagerduty:getTeamNotificationRulesNotificationRulePagerduty",
                    "description": "The PagerDuty notification settings.\n"
                },
                "slack": {
                    "$ref": "#/types/datadog:index/getTeamNotificationRulesNotificationRuleSlack:getTeamNotificationRulesNotificationRuleSlack",
                    "description": "The Slack notification settings.\n"
                }
            },
            "type": "object",
            "required": [
                "id"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRulesNotificationRuleEmail:getTeamNotificationRulesNotificationRuleEmail": {
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Flag indicating whether email notifications should be sent.\n"
                }
            },
            "type": "object",
            "required": [
                "enabled"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRulesNotificationRuleMsTeams:getTeamNotificationRulesNotificationRuleMsTeams": {
            "properties": {
                "connectorName": {
                    "type": "string",
                    "description": "MS Teams connector name.\n"
                }
            },
            "type": "object",
            "required": [
                "connectorName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRulesNotificationRulePagerduty:getTeamNotificationRulesNotificationRulePagerduty": {
            "properties": {
                "serviceName": {
                    "type": "string",
                    "description": "PagerDuty service name.\n"
                }
            },
            "type": "object",
            "required": [
                "serviceName"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamNotificationRulesNotificationRuleSlack:getTeamNotificationRulesNotificationRuleSlack": {
            "properties": {
                "channel": {
                    "type": "string",
                    "description": "Slack channel for notifications.\n"
                },
                "workspace": {
                    "type": "string",
                    "description": "Slack workspace for notifications.\n"
                }
            },
            "type": "object",
            "required": [
                "channel",
                "workspace"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getTeamsTeam:getTeamsTeam": {
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Free-form markdown description/content for the team's homepage.\n"
                },
                "handle": {
                    "type": "string",
                    "description": "The team's handle.\n"
                },
                "id": {
                    "type": "string",
                    "description": "The team's identifier.\n"
                },
                "linkCount": {
                    "type": "integer",
                    "description": "The number of links belonging to the team.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the team.\n"
                },
                "summary": {
                    "type": "string",
                    "description": "A brief summary of the team, derived from the \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e.\n"
                },
                "userCount": {
                    "type": "integer",
                    "description": "The number of users belonging to the team.\n"
                }
            },
            "type": "object",
            "required": [
                "description",
                "handle",
                "id",
                "linkCount",
                "name",
                "summary",
                "userCount"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:index/getUsersUser:getUsersUser": {
            "properties": {
                "createdAt": {
                    "type": "string"
                },
                "disabled": {
                    "type": "boolean"
                },
                "email": {
                    "type": "string"
                },
                "handle": {
                    "type": "string"
                },
                "icon": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "mfaEnabled": {
                    "type": "boolean"
                },
                "modifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "serviceAccount": {
                    "type": "boolean"
                },
                "status": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                },
                "verified": {
                    "type": "boolean"
                }
            },
            "type": "object",
            "required": [
                "createdAt",
                "disabled",
                "email",
                "handle",
                "icon",
                "id",
                "mfaEnabled",
                "modifiedAt",
                "name",
                "serviceAccount",
                "status",
                "title",
                "verified"
            ],
            "language": {
                "nodejs": {
                    "requiredInputs": []
                }
            }
        },
        "datadog:slack/ChannelDisplay:ChannelDisplay": {
            "properties": {
                "message": {
                    "type": "boolean",
                    "description": "Show the main body of the alert event. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "muteButtons": {
                    "type": "boolean",
                    "description": "Show interactive buttons to mute the alerting monitor. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "notified": {
                    "type": "boolean",
                    "description": "Show the list of @-handles in the alert event. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "snapshot": {
                    "type": "boolean",
                    "description": "Show the alert event's snapshot image. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "boolean",
                    "description": "Show the scopes on which the monitor alerted. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                }
            },
            "type": "object"
        }
    },
    "provider": {
        "description": "The provider type for the datadog package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n",
        "properties": {
            "apiKey": {
                "type": "string",
                "description": "(Required unless validate is false) Datadog API key. This can also be set via the DD_API_KEY environment variable.",
                "secret": true
            },
            "apiUrl": {
                "type": "string",
                "description": "The API URL. This can also be set via the DD_HOST environment variable, and defaults to `https://api.datadoghq.com`. Note that this URL must not end with the `/api/` path. For example, `https://api.datadoghq.com/` is a correct value, while `https://api.datadoghq.com/api/` is not. And if you're working with \"EU\" version of Datadog, use `https://api.datadoghq.eu/`. Other Datadog region examples: `https://api.us5.datadoghq.com/`, `https://api.us3.datadoghq.com/` and `https://api.ddog-gov.com/`. See https://docs.datadoghq.com/getting_started/site/ for all available regions."
            },
            "appKey": {
                "type": "string",
                "description": "(Required unless validate is false) Datadog APP key. This can also be set via the DD_APP_KEY environment variable.",
                "secret": true
            },
            "awsAccessKeyId": {
                "type": "string",
                "description": "The AWS access key ID; used for cloud-provider-based authentication. This can also be set using the `AWS_ACCESS_KEY_ID` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.",
                "secret": true
            },
            "awsSecretAccessKey": {
                "type": "string",
                "description": "The AWS secret access key; used for cloud-provider-based authentication. This can also be set using the `AWS_SECRET_ACCESS_KEY` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.",
                "secret": true
            },
            "awsSessionToken": {
                "type": "string",
                "description": "The AWS session token; used for cloud-provider-based authentication. This can also be set using the `AWS_SESSION_TOKEN` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e and using temporary credentials.",
                "secret": true
            },
            "cloudProviderRegion": {
                "type": "string",
                "description": "The cloud provider region specifier; used for cloud-provider-based authentication. For example, `us-east-1` for AWS."
            },
            "cloudProviderType": {
                "type": "string",
                "description": "Specifies the cloud provider used for cloud-provider-based authentication, enabling keyless access without API or app keys. Only [\u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e] is supported. This feature is in Preview. If you'd like to enable it for your organization, contact [support](https://docs.datadoghq.com/help/)."
            },
            "defaultTags": {
                "$ref": "#/types/datadog:index/ProviderDefaultTags:ProviderDefaultTags",
                "description": "[Experimental - Logs Indexes, Logs Pipelines, Monitors Security Monitoring Rules, and Service Level Objectives only] Configuration block containing settings to apply default resource tags across all resources."
            },
            "httpClientRetryBackoffBase": {
                "type": "integer",
                "description": "The HTTP request retry back off base. Defaults to 2."
            },
            "httpClientRetryBackoffMultiplier": {
                "type": "integer",
                "description": "The HTTP request retry back off multiplier. Defaults to 2."
            },
            "httpClientRetryEnabled": {
                "type": "string",
                "description": "Enables request retries on HTTP status codes 429 and 5xx. Valid values are [\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e]. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e."
            },
            "httpClientRetryMaxRetries": {
                "type": "integer",
                "description": "The HTTP request maximum retry number. Defaults to 3."
            },
            "httpClientRetryTimeout": {
                "type": "integer",
                "description": "The HTTP request retry timeout period. Defaults to 60 seconds."
            },
            "orgUuid": {
                "type": "string",
                "description": "The organization UUID; used for cloud-provider-based authentication. See the [Datadog API documentation](https://docs.datadoghq.com/api/v1/organizations/) for more information."
            },
            "validate": {
                "type": "string",
                "description": "Enables validation of the provided API key during provider initialization. Valid values are [\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e]. Default is true. When false,\u003cspan pulumi-lang-nodejs=\" apiKey \" pulumi-lang-dotnet=\" ApiKey \" pulumi-lang-go=\" apiKey \" pulumi-lang-python=\" api_key \" pulumi-lang-yaml=\" apiKey \" pulumi-lang-java=\" apiKey \"\u003e apiKey \u003c/span\u003ewon't be checked."
            }
        },
        "inputProperties": {
            "apiKey": {
                "type": "string",
                "description": "(Required unless validate is false) Datadog API key. This can also be set via the DD_API_KEY environment variable.",
                "secret": true
            },
            "apiUrl": {
                "type": "string",
                "description": "The API URL. This can also be set via the DD_HOST environment variable, and defaults to `https://api.datadoghq.com`. Note that this URL must not end with the `/api/` path. For example, `https://api.datadoghq.com/` is a correct value, while `https://api.datadoghq.com/api/` is not. And if you're working with \"EU\" version of Datadog, use `https://api.datadoghq.eu/`. Other Datadog region examples: `https://api.us5.datadoghq.com/`, `https://api.us3.datadoghq.com/` and `https://api.ddog-gov.com/`. See https://docs.datadoghq.com/getting_started/site/ for all available regions."
            },
            "appKey": {
                "type": "string",
                "description": "(Required unless validate is false) Datadog APP key. This can also be set via the DD_APP_KEY environment variable.",
                "secret": true
            },
            "awsAccessKeyId": {
                "type": "string",
                "description": "The AWS access key ID; used for cloud-provider-based authentication. This can also be set using the `AWS_ACCESS_KEY_ID` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.",
                "secret": true
            },
            "awsSecretAccessKey": {
                "type": "string",
                "description": "The AWS secret access key; used for cloud-provider-based authentication. This can also be set using the `AWS_SECRET_ACCESS_KEY` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.",
                "secret": true
            },
            "awsSessionToken": {
                "type": "string",
                "description": "The AWS session token; used for cloud-provider-based authentication. This can also be set using the `AWS_SESSION_TOKEN` environment variable. Required when using \u003cspan pulumi-lang-nodejs=\"`cloudProviderType`\" pulumi-lang-dotnet=\"`CloudProviderType`\" pulumi-lang-go=\"`cloudProviderType`\" pulumi-lang-python=\"`cloud_provider_type`\" pulumi-lang-yaml=\"`cloudProviderType`\" pulumi-lang-java=\"`cloudProviderType`\"\u003e`cloudProviderType`\u003c/span\u003e set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e and using temporary credentials.",
                "secret": true
            },
            "cloudProviderRegion": {
                "type": "string",
                "description": "The cloud provider region specifier; used for cloud-provider-based authentication. For example, `us-east-1` for AWS."
            },
            "cloudProviderType": {
                "type": "string",
                "description": "Specifies the cloud provider used for cloud-provider-based authentication, enabling keyless access without API or app keys. Only [\u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e] is supported. This feature is in Preview. If you'd like to enable it for your organization, contact [support](https://docs.datadoghq.com/help/)."
            },
            "defaultTags": {
                "$ref": "#/types/datadog:index/ProviderDefaultTags:ProviderDefaultTags",
                "description": "[Experimental - Logs Indexes, Logs Pipelines, Monitors Security Monitoring Rules, and Service Level Objectives only] Configuration block containing settings to apply default resource tags across all resources."
            },
            "httpClientRetryBackoffBase": {
                "type": "integer",
                "description": "The HTTP request retry back off base. Defaults to 2."
            },
            "httpClientRetryBackoffMultiplier": {
                "type": "integer",
                "description": "The HTTP request retry back off multiplier. Defaults to 2."
            },
            "httpClientRetryEnabled": {
                "type": "string",
                "description": "Enables request retries on HTTP status codes 429 and 5xx. Valid values are [\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e]. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e."
            },
            "httpClientRetryMaxRetries": {
                "type": "integer",
                "description": "The HTTP request maximum retry number. Defaults to 3."
            },
            "httpClientRetryTimeout": {
                "type": "integer",
                "description": "The HTTP request retry timeout period. Defaults to 60 seconds."
            },
            "orgUuid": {
                "type": "string",
                "description": "The organization UUID; used for cloud-provider-based authentication. See the [Datadog API documentation](https://docs.datadoghq.com/api/v1/organizations/) for more information."
            },
            "validate": {
                "type": "string",
                "description": "Enables validation of the provided API key during provider initialization. Valid values are [\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e]. Default is true. When false,\u003cspan pulumi-lang-nodejs=\" apiKey \" pulumi-lang-dotnet=\" ApiKey \" pulumi-lang-go=\" apiKey \" pulumi-lang-python=\" api_key \" pulumi-lang-yaml=\" apiKey \" pulumi-lang-java=\" apiKey \"\u003e apiKey \u003c/span\u003ewon't be checked."
            }
        },
        "methods": {
            "terraformConfig": "pulumi:providers:datadog/terraformConfig"
        }
    },
    "resources": {
        "datadog:aws/integrationAccount:IntegrationAccount": {
            "description": "Provides a Datadog—Amazon Web Services integration resource. This can be used to create and manage Datadog—Amazon Web Services integration.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new integration_aws_account resource\nconst foo = new datadog.aws.IntegrationAccount(\"foo\", {\n    accountTags: [\"env:prod\"],\n    awsAccountId: \"123456789012\",\n    awsPartition: \"aws\",\n    awsRegions: [{\n        includeAll: true,\n    }],\n    authConfig: [{\n        awsAuthConfigRole: [{\n            roleName: \"DatadogIntegrationRole\",\n        }],\n    }],\n    logsConfig: [{\n        lambdaForwarder: [{\n            lambdas: [\"arn:aws:lambda:us-east-1:123456789012:function:my-lambda\"],\n            sources: [\"s3\"],\n            logSourceConfig: [{\n                tagFilters: [{\n                    source: \"s3\",\n                    tags: [\n                        \"env:prod\",\n                        \"team:backend\",\n                    ],\n                }],\n            }],\n        }],\n    }],\n    metricsConfig: [{\n        automuteEnabled: true,\n        collectCloudwatchAlarms: true,\n        collectCustomMetrics: true,\n        enabled: true,\n        namespaceFilters: [{\n            excludeOnlies: [\n                \"AWS/SQS\",\n                \"AWS/ElasticMapReduce\",\n                \"AWS/Usage\",\n            ],\n        }],\n        tagFilters: [{\n            namespace: \"AWS/EC2\",\n            tags: [\"datadog:true\"],\n        }],\n    }],\n    resourcesConfig: [{\n        cloudSecurityPostureManagementCollection: true,\n        extendedCollection: true,\n    }],\n    tracesConfig: [{\n        xrayServices: [{\n            includeAll: true,\n        }],\n    }],\n});\n// Create new integration_aws_account resource with all Datadog-provided defaults configured\nconst foo_defaults = new datadog.aws.IntegrationAccount(\"foo-defaults\", {\n    awsRegions: [{}],\n    logsConfig: [{\n        lambdaForwarder: [{}],\n    }],\n    metricsConfig: [{\n        namespaceFilters: [{}],\n    }],\n    resourcesConfig: [{}],\n    tracesConfig: [{\n        xrayServices: [{}],\n    }],\n    awsAccountId: \"234567890123\",\n    awsPartition: \"aws\",\n    authConfig: [{\n        awsAuthConfigRole: [{\n            roleName: \"DatadogIntegrationRole\",\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new integration_aws_account resource\nfoo = datadog.aws.IntegrationAccount(\"foo\",\n    account_tags=[\"env:prod\"],\n    aws_account_id=\"123456789012\",\n    aws_partition=\"aws\",\n    aws_regions=[{\n        \"includeAll\": True,\n    }],\n    auth_config=[{\n        \"awsAuthConfigRole\": [{\n            \"roleName\": \"DatadogIntegrationRole\",\n        }],\n    }],\n    logs_config=[{\n        \"lambdaForwarder\": [{\n            \"lambdas\": [\"arn:aws:lambda:us-east-1:123456789012:function:my-lambda\"],\n            \"sources\": [\"s3\"],\n            \"logSourceConfig\": [{\n                \"tagFilters\": [{\n                    \"source\": \"s3\",\n                    \"tags\": [\n                        \"env:prod\",\n                        \"team:backend\",\n                    ],\n                }],\n            }],\n        }],\n    }],\n    metrics_config=[{\n        \"automuteEnabled\": True,\n        \"collectCloudwatchAlarms\": True,\n        \"collectCustomMetrics\": True,\n        \"enabled\": True,\n        \"namespaceFilters\": [{\n            \"excludeOnlies\": [\n                \"AWS/SQS\",\n                \"AWS/ElasticMapReduce\",\n                \"AWS/Usage\",\n            ],\n        }],\n        \"tagFilters\": [{\n            \"namespace\": \"AWS/EC2\",\n            \"tags\": [\"datadog:true\"],\n        }],\n    }],\n    resources_config=[{\n        \"cloudSecurityPostureManagementCollection\": True,\n        \"extendedCollection\": True,\n    }],\n    traces_config=[{\n        \"xrayServices\": [{\n            \"includeAll\": True,\n        }],\n    }])\n# Create new integration_aws_account resource with all Datadog-provided defaults configured\nfoo_defaults = datadog.aws.IntegrationAccount(\"foo-defaults\",\n    aws_regions=[{}],\n    logs_config=[{\n        \"lambdaForwarder\": [{}],\n    }],\n    metrics_config=[{\n        \"namespaceFilters\": [{}],\n    }],\n    resources_config=[{}],\n    traces_config=[{\n        \"xrayServices\": [{}],\n    }],\n    aws_account_id=\"234567890123\",\n    aws_partition=\"aws\",\n    auth_config=[{\n        \"awsAuthConfigRole\": [{\n            \"roleName\": \"DatadogIntegrationRole\",\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new integration_aws_account resource\n    var foo = new Datadog.Aws.IntegrationAccount(\"foo\", new()\n    {\n        AccountTags = new[]\n        {\n            \"env:prod\",\n        },\n        AwsAccountId = \"123456789012\",\n        AwsPartition = \"aws\",\n        AwsRegions = new[]\n        {\n            \n            {\n                { \"includeAll\", true },\n            },\n        },\n        AuthConfig = new[]\n        {\n            \n            {\n                { \"awsAuthConfigRole\", new[]\n                {\n                    \n                    {\n                        { \"roleName\", \"DatadogIntegrationRole\" },\n                    },\n                } },\n            },\n        },\n        LogsConfig = new[]\n        {\n            \n            {\n                { \"lambdaForwarder\", new[]\n                {\n                    \n                    {\n                        { \"lambdas\", new[]\n                        {\n                            \"arn:aws:lambda:us-east-1:123456789012:function:my-lambda\",\n                        } },\n                        { \"sources\", new[]\n                        {\n                            \"s3\",\n                        } },\n                        { \"logSourceConfig\", new[]\n                        {\n                            \n                            {\n                                { \"tagFilters\", new[]\n                                {\n                                    \n                                    {\n                                        { \"source\", \"s3\" },\n                                        { \"tags\", new[]\n                                        {\n                                            \"env:prod\",\n                                            \"team:backend\",\n                                        } },\n                                    },\n                                } },\n                            },\n                        } },\n                    },\n                } },\n            },\n        },\n        MetricsConfig = new[]\n        {\n            \n            {\n                { \"automuteEnabled\", true },\n                { \"collectCloudwatchAlarms\", true },\n                { \"collectCustomMetrics\", true },\n                { \"enabled\", true },\n                { \"namespaceFilters\", new[]\n                {\n                    \n                    {\n                        { \"excludeOnlies\", new[]\n                        {\n                            \"AWS/SQS\",\n                            \"AWS/ElasticMapReduce\",\n                            \"AWS/Usage\",\n                        } },\n                    },\n                } },\n                { \"tagFilters\", new[]\n                {\n                    \n                    {\n                        { \"namespace\", \"AWS/EC2\" },\n                        { \"tags\", new[]\n                        {\n                            \"datadog:true\",\n                        } },\n                    },\n                } },\n            },\n        },\n        ResourcesConfig = new[]\n        {\n            \n            {\n                { \"cloudSecurityPostureManagementCollection\", true },\n                { \"extendedCollection\", true },\n            },\n        },\n        TracesConfig = new[]\n        {\n            \n            {\n                { \"xrayServices\", new[]\n                {\n                    \n                    {\n                        { \"includeAll\", true },\n                    },\n                } },\n            },\n        },\n    });\n\n    // Create new integration_aws_account resource with all Datadog-provided defaults configured\n    var foo_defaults = new Datadog.Aws.IntegrationAccount(\"foo-defaults\", new()\n    {\n        AwsRegions = new[]\n        {\n            null,\n        },\n        LogsConfig = new[]\n        {\n            \n            {\n                { \"lambdaForwarder\", new[]\n                {\n                    null,\n                } },\n            },\n        },\n        MetricsConfig = new[]\n        {\n            \n            {\n                { \"namespaceFilters\", new[]\n                {\n                    null,\n                } },\n            },\n        },\n        ResourcesConfig = new[]\n        {\n            null,\n        },\n        TracesConfig = new[]\n        {\n            \n            {\n                { \"xrayServices\", new[]\n                {\n                    null,\n                } },\n            },\n        },\n        AwsAccountId = \"234567890123\",\n        AwsPartition = \"aws\",\n        AuthConfig = new[]\n        {\n            \n            {\n                { \"awsAuthConfigRole\", new[]\n                {\n                    \n                    {\n                        { \"roleName\", \"DatadogIntegrationRole\" },\n                    },\n                } },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new integration_aws_account resource\n\t\t_, err := aws.NewIntegrationAccount(ctx, \"foo\", \u0026aws.IntegrationAccountArgs{\n\t\t\tAccountTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"env:prod\"),\n\t\t\t},\n\t\t\tAwsAccountId: pulumi.String(\"123456789012\"),\n\t\t\tAwsPartition: pulumi.String(\"aws\"),\n\t\t\tAwsRegions: aws.IntegrationAccountAwsRegionsArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"includeAll\": true,\n\t\t\t\t},\n\t\t\t},\n\t\t\tAuthConfig: aws.IntegrationAccountAuthConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"awsAuthConfigRole\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"roleName\": \"DatadogIntegrationRole\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLogsConfig: aws.IntegrationAccountLogsConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"lambdaForwarder\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"lambdas\": []string{\n\t\t\t\t\t\t\t\t\"arn:aws:lambda:us-east-1:123456789012:function:my-lambda\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"sources\": []string{\n\t\t\t\t\t\t\t\t\"s3\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"logSourceConfig\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"tagFilters\": []map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"source\": \"s3\",\n\t\t\t\t\t\t\t\t\t\t\t\"tags\": []string{\n\t\t\t\t\t\t\t\t\t\t\t\t\"env:prod\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"team:backend\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tMetricsConfig: aws.IntegrationAccountMetricsConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"automuteEnabled\":         true,\n\t\t\t\t\t\"collectCloudwatchAlarms\": true,\n\t\t\t\t\t\"collectCustomMetrics\":    true,\n\t\t\t\t\t\"enabled\":                 true,\n\t\t\t\t\t\"namespaceFilters\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"excludeOnlies\": []string{\n\t\t\t\t\t\t\t\t\"AWS/SQS\",\n\t\t\t\t\t\t\t\t\"AWS/ElasticMapReduce\",\n\t\t\t\t\t\t\t\t\"AWS/Usage\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t\"tagFilters\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"namespace\": \"AWS/EC2\",\n\t\t\t\t\t\t\t\"tags\": []string{\n\t\t\t\t\t\t\t\t\"datadog:true\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tResourcesConfig: aws.IntegrationAccountResourcesConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"cloudSecurityPostureManagementCollection\": true,\n\t\t\t\t\t\"extendedCollection\":                       true,\n\t\t\t\t},\n\t\t\t},\n\t\t\tTracesConfig: aws.IntegrationAccountTracesConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"xrayServices\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"includeAll\": true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create new integration_aws_account resource with all Datadog-provided defaults configured\n\t\t_, err = aws.NewIntegrationAccount(ctx, \"foo-defaults\", \u0026aws.IntegrationAccountArgs{\n\t\t\tAwsRegions: aws.IntegrationAccountAwsRegionsArgs{\n\t\t\t\tmap[string]interface{}{},\n\t\t\t},\n\t\t\tLogsConfig: aws.IntegrationAccountLogsConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"lambdaForwarder\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tMetricsConfig: aws.IntegrationAccountMetricsConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"namespaceFilters\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tResourcesConfig: aws.IntegrationAccountResourcesConfigArgs{\n\t\t\t\tmap[string]interface{}{},\n\t\t\t},\n\t\t\tTracesConfig: aws.IntegrationAccountTracesConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"xrayServices\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAwsAccountId: pulumi.String(\"234567890123\"),\n\t\t\tAwsPartition: pulumi.String(\"aws\"),\n\t\t\tAuthConfig: aws.IntegrationAccountAuthConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"awsAuthConfigRole\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"roleName\": \"DatadogIntegrationRole\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.aws.IntegrationAccount;\nimport com.pulumi.datadog.aws.IntegrationAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new integration_aws_account resource\n        var foo = new IntegrationAccount(\"foo\", IntegrationAccountArgs.builder()\n            .accountTags(\"env:prod\")\n            .awsAccountId(\"123456789012\")\n            .awsPartition(\"aws\")\n            .awsRegions(IntegrationAccountAwsRegionsArgs.builder()\n                .includeAll(true)\n                .build())\n            .authConfig(IntegrationAccountAuthConfigArgs.builder()\n                .awsAuthConfigRole(IntegrationAccountAuthConfigAwsAuthConfigRoleArgs.builder()\n                    .roleName(\"DatadogIntegrationRole\")\n                    .build())\n                .build())\n            .logsConfig(IntegrationAccountLogsConfigArgs.builder()\n                .lambdaForwarder(IntegrationAccountLogsConfigLambdaForwarderArgs.builder()\n                    .lambdas(\"arn:aws:lambda:us-east-1:123456789012:function:my-lambda\")\n                    .sources(\"s3\")\n                    .logSourceConfig(IntegrationAccountLogsConfigLambdaForwarderLogSourceConfigArgs.builder()\n                        .tagFilters(IntegrationAccountLogsConfigLambdaForwarderLogSourceConfigTagFilterArgs.builder()\n                            .source(\"s3\")\n                            .tags(                            \n                                \"env:prod\",\n                                \"team:backend\")\n                            .build())\n                        .build())\n                    .build())\n                .build())\n            .metricsConfig(IntegrationAccountMetricsConfigArgs.builder()\n                .automuteEnabled(true)\n                .collectCloudwatchAlarms(true)\n                .collectCustomMetrics(true)\n                .enabled(true)\n                .namespaceFilters(IntegrationAccountMetricsConfigNamespaceFiltersArgs.builder()\n                    .excludeOnlies(                    \n                        \"AWS/SQS\",\n                        \"AWS/ElasticMapReduce\",\n                        \"AWS/Usage\")\n                    .build())\n                .tagFilters(IntegrationAccountMetricsConfigTagFilterArgs.builder()\n                    .namespace(\"AWS/EC2\")\n                    .tags(\"datadog:true\")\n                    .build())\n                .build())\n            .resourcesConfig(IntegrationAccountResourcesConfigArgs.builder()\n                .cloudSecurityPostureManagementCollection(true)\n                .extendedCollection(true)\n                .build())\n            .tracesConfig(IntegrationAccountTracesConfigArgs.builder()\n                .xrayServices(IntegrationAccountTracesConfigXrayServicesArgs.builder()\n                    .includeAll(true)\n                    .build())\n                .build())\n            .build());\n\n        // Create new integration_aws_account resource with all Datadog-provided defaults configured\n        var foo_defaults = new IntegrationAccount(\"foo-defaults\", IntegrationAccountArgs.builder()\n            .awsRegions(IntegrationAccountAwsRegionsArgs.builder()\n                .build())\n            .logsConfig(IntegrationAccountLogsConfigArgs.builder()\n                .lambdaForwarder(IntegrationAccountLogsConfigLambdaForwarderArgs.builder()\n                    .build())\n                .build())\n            .metricsConfig(IntegrationAccountMetricsConfigArgs.builder()\n                .namespaceFilters(IntegrationAccountMetricsConfigNamespaceFiltersArgs.builder()\n                    .build())\n                .build())\n            .resourcesConfig(IntegrationAccountResourcesConfigArgs.builder()\n                .build())\n            .tracesConfig(IntegrationAccountTracesConfigArgs.builder()\n                .xrayServices(IntegrationAccountTracesConfigXrayServicesArgs.builder()\n                    .build())\n                .build())\n            .awsAccountId(\"234567890123\")\n            .awsPartition(\"aws\")\n            .authConfig(IntegrationAccountAuthConfigArgs.builder()\n                .awsAuthConfigRole(IntegrationAccountAuthConfigAwsAuthConfigRoleArgs.builder()\n                    .roleName(\"DatadogIntegrationRole\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new integration_aws_account resource\n  foo:\n    type: datadog:aws:IntegrationAccount\n    properties:\n      accountTags:\n        - env:prod\n      awsAccountId: '123456789012'\n      awsPartition: aws\n      awsRegions:\n        - includeAll: true\n      authConfig:\n        - awsAuthConfigRole:\n            - roleName: DatadogIntegrationRole\n      logsConfig:\n        - lambdaForwarder:\n            - lambdas:\n                - arn:aws:lambda:us-east-1:123456789012:function:my-lambda\n              sources:\n                - s3\n              logSourceConfig:\n                - tagFilters:\n                    - source: s3\n                      tags:\n                        - env:prod\n                        - team:backend\n      metricsConfig:\n        - automuteEnabled: true\n          collectCloudwatchAlarms: true\n          collectCustomMetrics: true\n          enabled: true\n          namespaceFilters:\n            - excludeOnlies:\n                - AWS/SQS\n                - AWS/ElasticMapReduce\n                - AWS/Usage\n          tagFilters:\n            - namespace: AWS/EC2\n              tags:\n                - datadog:true\n      resourcesConfig:\n        - cloudSecurityPostureManagementCollection: true\n          extendedCollection: true\n      tracesConfig:\n        - xrayServices:\n            - includeAll: true\n  # Create new integration_aws_account resource with all Datadog-provided defaults configured\n  foo-defaults:\n    type: datadog:aws:IntegrationAccount\n    properties:\n      awsRegions:\n        - {}\n      logsConfig:\n        - lambdaForwarder:\n            - {}\n      metricsConfig:\n        - namespaceFilters:\n            - {}\n      resourcesConfig:\n        - {}\n      tracesConfig:\n        - xrayServices:\n            - {}\n      awsAccountId: '234567890123'\n      awsPartition: aws\n      authConfig:\n        - awsAuthConfigRole:\n            - roleName: DatadogIntegrationRole\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n## Upgrading from \u003cspan pulumi-lang-nodejs=\"`datadogIntegrationAws`\" pulumi-lang-dotnet=\"`DatadogIntegrationAws`\" pulumi-lang-go=\"`datadogIntegrationAws`\" pulumi-lang-python=\"`datadog_integration_aws`\" pulumi-lang-yaml=\"`datadogIntegrationAws`\" pulumi-lang-java=\"`datadogIntegrationAws`\"\u003e`datadogIntegrationAws`\u003c/span\u003e resources\n\n To migrate your account configuration from `datadog_integration_aws*` resources to \u003cspan pulumi-lang-nodejs=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-dotnet=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-go=\"`aws.IntegrationAccount`\" pulumi-lang-python=\"`aws.IntegrationAccount`\" pulumi-lang-yaml=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-java=\"`datadog.aws.IntegrationAccount`\"\u003e`datadog.aws.IntegrationAccount`\u003c/span\u003e:\n 1. Import your integrated accounts into \u003cspan pulumi-lang-nodejs=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-dotnet=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-go=\"`aws.IntegrationAccount`\" pulumi-lang-python=\"`aws.IntegrationAccount`\" pulumi-lang-yaml=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-java=\"`datadog.aws.IntegrationAccount`\"\u003e`datadog.aws.IntegrationAccount`\u003c/span\u003e resources using the import command below.\n 2. Once successfully imported, you can run `terraform state rm` to delete all resources of the deprecated types from state:\n    - \u003cspan pulumi-lang-nodejs=\"`datadogIntegrationAws`\" pulumi-lang-dotnet=\"`DatadogIntegrationAws`\" pulumi-lang-go=\"`datadogIntegrationAws`\" pulumi-lang-python=\"`datadog_integration_aws`\" pulumi-lang-yaml=\"`datadogIntegrationAws`\" pulumi-lang-java=\"`datadogIntegrationAws`\"\u003e`datadogIntegrationAws`\u003c/span\u003e\n    - \u003cspan pulumi-lang-nodejs=\"`datadogIntegrationAwsLambdaArn`\" pulumi-lang-dotnet=\"`DatadogIntegrationAwsLambdaArn`\" pulumi-lang-go=\"`datadogIntegrationAwsLambdaArn`\" pulumi-lang-python=\"`datadog_integration_aws_lambda_arn`\" pulumi-lang-yaml=\"`datadogIntegrationAwsLambdaArn`\" pulumi-lang-java=\"`datadogIntegrationAwsLambdaArn`\"\u003e`datadogIntegrationAwsLambdaArn`\u003c/span\u003e\n    - \u003cspan pulumi-lang-nodejs=\"`datadogIntegrationAwsLogCollection`\" pulumi-lang-dotnet=\"`DatadogIntegrationAwsLogCollection`\" pulumi-lang-go=\"`datadogIntegrationAwsLogCollection`\" pulumi-lang-python=\"`datadog_integration_aws_log_collection`\" pulumi-lang-yaml=\"`datadogIntegrationAwsLogCollection`\" pulumi-lang-java=\"`datadogIntegrationAwsLogCollection`\"\u003e`datadogIntegrationAwsLogCollection`\u003c/span\u003e\n    - \u003cspan pulumi-lang-nodejs=\"`datadogIntegrationAwsTagFilter`\" pulumi-lang-dotnet=\"`DatadogIntegrationAwsTagFilter`\" pulumi-lang-go=\"`datadogIntegrationAwsTagFilter`\" pulumi-lang-python=\"`datadog_integration_aws_tag_filter`\" pulumi-lang-yaml=\"`datadogIntegrationAwsTagFilter`\" pulumi-lang-java=\"`datadogIntegrationAwsTagFilter`\"\u003e`datadogIntegrationAwsTagFilter`\u003c/span\u003e\n\n## Import\n\n```sh\n$ pulumi import datadog:aws/integrationAccount:IntegrationAccount example \"\u003cdatadog-aws-account-config-id\u003e\"\n```\n AWS Account Config ID can be retrieved by using the [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and querying by AWS Account ID.\n\n",
            "properties": {
                "accountTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags to apply to all metrics in the account. Defaults to `[]`.\n"
                },
                "authConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountAuthConfig:IntegrationAccountAuthConfig",
                    "description": "Configure how Datadog authenticates to your AWS account. Either \u003cspan pulumi-lang-nodejs=\"`awsAuthConfigKeys`\" pulumi-lang-dotnet=\"`AwsAuthConfigKeys`\" pulumi-lang-go=\"`awsAuthConfigKeys`\" pulumi-lang-python=\"`aws_auth_config_keys`\" pulumi-lang-yaml=\"`awsAuthConfigKeys`\" pulumi-lang-java=\"`awsAuthConfigKeys`\"\u003e`awsAuthConfigKeys`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`awsAuthConfigRole`\" pulumi-lang-dotnet=\"`AwsAuthConfigRole`\" pulumi-lang-go=\"`awsAuthConfigRole`\" pulumi-lang-python=\"`aws_auth_config_role`\" pulumi-lang-yaml=\"`awsAuthConfigRole`\" pulumi-lang-java=\"`awsAuthConfigRole`\"\u003e`awsAuthConfigRole`\u003c/span\u003e block is required within.\n"
                },
                "awsAccountId": {
                    "type": "string",
                    "description": "Your AWS Account ID without dashes.\n"
                },
                "awsPartition": {
                    "type": "string",
                    "description": "AWS Account partition.\n"
                },
                "awsRegions": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountAwsRegions:IntegrationAccountAwsRegions",
                    "description": "AWS regions to collect data from. Defaults to \u003cspan pulumi-lang-nodejs=\"`includeAll`\" pulumi-lang-dotnet=\"`IncludeAll`\" pulumi-lang-go=\"`includeAll`\" pulumi-lang-python=\"`include_all`\" pulumi-lang-yaml=\"`includeAll`\" pulumi-lang-java=\"`includeAll`\"\u003e`includeAll`\u003c/span\u003e if block is empty.\n"
                },
                "logsConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountLogsConfig:IntegrationAccountLogsConfig",
                    "description": "Configure log autosubscription for your Datadog Forwarder Lambda functions. The \u003cspan pulumi-lang-nodejs=\"`lambdaForwarder`\" pulumi-lang-dotnet=\"`LambdaForwarder`\" pulumi-lang-go=\"`lambdaForwarder`\" pulumi-lang-python=\"`lambda_forwarder`\" pulumi-lang-yaml=\"`lambdaForwarder`\" pulumi-lang-java=\"`lambdaForwarder`\"\u003e`lambdaForwarder`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                },
                "metricsConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountMetricsConfig:IntegrationAccountMetricsConfig",
                    "description": "Configure metrics collection from AWS CloudWatch. The \u003cspan pulumi-lang-nodejs=\"`namespaceFilters`\" pulumi-lang-dotnet=\"`NamespaceFilters`\" pulumi-lang-go=\"`namespaceFilters`\" pulumi-lang-python=\"`namespace_filters`\" pulumi-lang-yaml=\"`namespaceFilters`\" pulumi-lang-java=\"`namespaceFilters`\"\u003e`namespaceFilters`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                },
                "resourcesConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountResourcesConfig:IntegrationAccountResourcesConfig",
                    "description": "AWS resources collection config. May be empty to use defaults.\n"
                },
                "tracesConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountTracesConfig:IntegrationAccountTracesConfig",
                    "description": "AWS traces collection config. The \u003cspan pulumi-lang-nodejs=\"`xrayServices`\" pulumi-lang-dotnet=\"`XrayServices`\" pulumi-lang-go=\"`xrayServices`\" pulumi-lang-python=\"`xray_services`\" pulumi-lang-yaml=\"`xrayServices`\" pulumi-lang-java=\"`xrayServices`\"\u003e`xrayServices`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                }
            },
            "required": [
                "accountTags",
                "awsAccountId",
                "awsPartition"
            ],
            "inputProperties": {
                "accountTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags to apply to all metrics in the account. Defaults to `[]`.\n"
                },
                "authConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountAuthConfig:IntegrationAccountAuthConfig",
                    "description": "Configure how Datadog authenticates to your AWS account. Either \u003cspan pulumi-lang-nodejs=\"`awsAuthConfigKeys`\" pulumi-lang-dotnet=\"`AwsAuthConfigKeys`\" pulumi-lang-go=\"`awsAuthConfigKeys`\" pulumi-lang-python=\"`aws_auth_config_keys`\" pulumi-lang-yaml=\"`awsAuthConfigKeys`\" pulumi-lang-java=\"`awsAuthConfigKeys`\"\u003e`awsAuthConfigKeys`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`awsAuthConfigRole`\" pulumi-lang-dotnet=\"`AwsAuthConfigRole`\" pulumi-lang-go=\"`awsAuthConfigRole`\" pulumi-lang-python=\"`aws_auth_config_role`\" pulumi-lang-yaml=\"`awsAuthConfigRole`\" pulumi-lang-java=\"`awsAuthConfigRole`\"\u003e`awsAuthConfigRole`\u003c/span\u003e block is required within.\n"
                },
                "awsAccountId": {
                    "type": "string",
                    "description": "Your AWS Account ID without dashes.\n"
                },
                "awsPartition": {
                    "type": "string",
                    "description": "AWS Account partition.\n"
                },
                "awsRegions": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountAwsRegions:IntegrationAccountAwsRegions",
                    "description": "AWS regions to collect data from. Defaults to \u003cspan pulumi-lang-nodejs=\"`includeAll`\" pulumi-lang-dotnet=\"`IncludeAll`\" pulumi-lang-go=\"`includeAll`\" pulumi-lang-python=\"`include_all`\" pulumi-lang-yaml=\"`includeAll`\" pulumi-lang-java=\"`includeAll`\"\u003e`includeAll`\u003c/span\u003e if block is empty.\n"
                },
                "logsConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountLogsConfig:IntegrationAccountLogsConfig",
                    "description": "Configure log autosubscription for your Datadog Forwarder Lambda functions. The \u003cspan pulumi-lang-nodejs=\"`lambdaForwarder`\" pulumi-lang-dotnet=\"`LambdaForwarder`\" pulumi-lang-go=\"`lambdaForwarder`\" pulumi-lang-python=\"`lambda_forwarder`\" pulumi-lang-yaml=\"`lambdaForwarder`\" pulumi-lang-java=\"`lambdaForwarder`\"\u003e`lambdaForwarder`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                },
                "metricsConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountMetricsConfig:IntegrationAccountMetricsConfig",
                    "description": "Configure metrics collection from AWS CloudWatch. The \u003cspan pulumi-lang-nodejs=\"`namespaceFilters`\" pulumi-lang-dotnet=\"`NamespaceFilters`\" pulumi-lang-go=\"`namespaceFilters`\" pulumi-lang-python=\"`namespace_filters`\" pulumi-lang-yaml=\"`namespaceFilters`\" pulumi-lang-java=\"`namespaceFilters`\"\u003e`namespaceFilters`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                },
                "resourcesConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountResourcesConfig:IntegrationAccountResourcesConfig",
                    "description": "AWS resources collection config. May be empty to use defaults.\n"
                },
                "tracesConfig": {
                    "$ref": "#/types/datadog:aws/IntegrationAccountTracesConfig:IntegrationAccountTracesConfig",
                    "description": "AWS traces collection config. The \u003cspan pulumi-lang-nodejs=\"`xrayServices`\" pulumi-lang-dotnet=\"`XrayServices`\" pulumi-lang-go=\"`xrayServices`\" pulumi-lang-python=\"`xray_services`\" pulumi-lang-yaml=\"`xrayServices`\" pulumi-lang-java=\"`xrayServices`\"\u003e`xrayServices`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                }
            },
            "requiredInputs": [
                "awsAccountId",
                "awsPartition"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationAccount resources.\n",
                "properties": {
                    "accountTags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Tags to apply to all metrics in the account. Defaults to `[]`.\n"
                    },
                    "authConfig": {
                        "$ref": "#/types/datadog:aws/IntegrationAccountAuthConfig:IntegrationAccountAuthConfig",
                        "description": "Configure how Datadog authenticates to your AWS account. Either \u003cspan pulumi-lang-nodejs=\"`awsAuthConfigKeys`\" pulumi-lang-dotnet=\"`AwsAuthConfigKeys`\" pulumi-lang-go=\"`awsAuthConfigKeys`\" pulumi-lang-python=\"`aws_auth_config_keys`\" pulumi-lang-yaml=\"`awsAuthConfigKeys`\" pulumi-lang-java=\"`awsAuthConfigKeys`\"\u003e`awsAuthConfigKeys`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`awsAuthConfigRole`\" pulumi-lang-dotnet=\"`AwsAuthConfigRole`\" pulumi-lang-go=\"`awsAuthConfigRole`\" pulumi-lang-python=\"`aws_auth_config_role`\" pulumi-lang-yaml=\"`awsAuthConfigRole`\" pulumi-lang-java=\"`awsAuthConfigRole`\"\u003e`awsAuthConfigRole`\u003c/span\u003e block is required within.\n"
                    },
                    "awsAccountId": {
                        "type": "string",
                        "description": "Your AWS Account ID without dashes.\n"
                    },
                    "awsPartition": {
                        "type": "string",
                        "description": "AWS Account partition.\n"
                    },
                    "awsRegions": {
                        "$ref": "#/types/datadog:aws/IntegrationAccountAwsRegions:IntegrationAccountAwsRegions",
                        "description": "AWS regions to collect data from. Defaults to \u003cspan pulumi-lang-nodejs=\"`includeAll`\" pulumi-lang-dotnet=\"`IncludeAll`\" pulumi-lang-go=\"`includeAll`\" pulumi-lang-python=\"`include_all`\" pulumi-lang-yaml=\"`includeAll`\" pulumi-lang-java=\"`includeAll`\"\u003e`includeAll`\u003c/span\u003e if block is empty.\n"
                    },
                    "logsConfig": {
                        "$ref": "#/types/datadog:aws/IntegrationAccountLogsConfig:IntegrationAccountLogsConfig",
                        "description": "Configure log autosubscription for your Datadog Forwarder Lambda functions. The \u003cspan pulumi-lang-nodejs=\"`lambdaForwarder`\" pulumi-lang-dotnet=\"`LambdaForwarder`\" pulumi-lang-go=\"`lambdaForwarder`\" pulumi-lang-python=\"`lambda_forwarder`\" pulumi-lang-yaml=\"`lambdaForwarder`\" pulumi-lang-java=\"`lambdaForwarder`\"\u003e`lambdaForwarder`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                    },
                    "metricsConfig": {
                        "$ref": "#/types/datadog:aws/IntegrationAccountMetricsConfig:IntegrationAccountMetricsConfig",
                        "description": "Configure metrics collection from AWS CloudWatch. The \u003cspan pulumi-lang-nodejs=\"`namespaceFilters`\" pulumi-lang-dotnet=\"`NamespaceFilters`\" pulumi-lang-go=\"`namespaceFilters`\" pulumi-lang-python=\"`namespace_filters`\" pulumi-lang-yaml=\"`namespaceFilters`\" pulumi-lang-java=\"`namespaceFilters`\"\u003e`namespaceFilters`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                    },
                    "resourcesConfig": {
                        "$ref": "#/types/datadog:aws/IntegrationAccountResourcesConfig:IntegrationAccountResourcesConfig",
                        "description": "AWS resources collection config. May be empty to use defaults.\n"
                    },
                    "tracesConfig": {
                        "$ref": "#/types/datadog:aws/IntegrationAccountTracesConfig:IntegrationAccountTracesConfig",
                        "description": "AWS traces collection config. The \u003cspan pulumi-lang-nodejs=\"`xrayServices`\" pulumi-lang-dotnet=\"`XrayServices`\" pulumi-lang-go=\"`xrayServices`\" pulumi-lang-python=\"`xray_services`\" pulumi-lang-yaml=\"`xrayServices`\" pulumi-lang-java=\"`xrayServices`\"\u003e`xrayServices`\u003c/span\u003e block is required within, but may be empty to use defaults.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:aws/integrationEventBridge:IntegrationEventBridge": {
            "description": "Provides a Datadog - Amazon Web Services integration EventBridge resource. This can be used to create and manage Event Sources for each Datadog integrated AWS account.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new integration_aws_event_bridge resource\nconst foo = new datadog.aws.IntegrationEventBridge(\"foo\", {\n    accountId: \"123456789012\",\n    createEventBus: true,\n    eventGeneratorName: \"app-alerts\",\n    region: \"us-east-1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new integration_aws_event_bridge resource\nfoo = datadog.aws.IntegrationEventBridge(\"foo\",\n    account_id=\"123456789012\",\n    create_event_bus=True,\n    event_generator_name=\"app-alerts\",\n    region=\"us-east-1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new integration_aws_event_bridge resource\n    var foo = new Datadog.Aws.IntegrationEventBridge(\"foo\", new()\n    {\n        AccountId = \"123456789012\",\n        CreateEventBus = true,\n        EventGeneratorName = \"app-alerts\",\n        Region = \"us-east-1\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new integration_aws_event_bridge resource\n\t\t_, err := aws.NewIntegrationEventBridge(ctx, \"foo\", \u0026aws.IntegrationEventBridgeArgs{\n\t\t\tAccountId:          pulumi.String(\"123456789012\"),\n\t\t\tCreateEventBus:     pulumi.Bool(true),\n\t\t\tEventGeneratorName: pulumi.String(\"app-alerts\"),\n\t\t\tRegion:             pulumi.String(\"us-east-1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.aws.IntegrationEventBridge;\nimport com.pulumi.datadog.aws.IntegrationEventBridgeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new integration_aws_event_bridge resource\n        var foo = new IntegrationEventBridge(\"foo\", IntegrationEventBridgeArgs.builder()\n            .accountId(\"123456789012\")\n            .createEventBus(true)\n            .eventGeneratorName(\"app-alerts\")\n            .region(\"us-east-1\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new integration_aws_event_bridge resource\n  foo:\n    type: datadog:aws:IntegrationEventBridge\n    properties:\n      accountId: '123456789012'\n      createEventBus: true\n      eventGeneratorName: app-alerts\n      region: us-east-1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nAmazon Web Service EventBridge integrations are imported using the Event Source name as listed for an integrated AWS account in Datadog\n\n```sh\n$ pulumi import datadog:aws/integrationEventBridge:IntegrationEventBridge foo event-source-name-abc12345\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Your AWS Account ID without dashes.\n"
                },
                "createEventBus": {
                    "type": "boolean",
                    "description": "True if Datadog should create the event bus in addition to the event source. Requires the `events:CreateEventBus` permission. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "eventGeneratorName": {
                    "type": "string",
                    "description": "The given part of the event source name, which is then combined with an assigned suffix to form the full name.\n"
                },
                "region": {
                    "type": "string",
                    "description": "The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints).\n"
                }
            },
            "required": [
                "accountId",
                "createEventBus",
                "eventGeneratorName",
                "region"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Your AWS Account ID without dashes.\n"
                },
                "createEventBus": {
                    "type": "boolean",
                    "description": "True if Datadog should create the event bus in addition to the event source. Requires the `events:CreateEventBus` permission. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "eventGeneratorName": {
                    "type": "string",
                    "description": "The given part of the event source name, which is then combined with an assigned suffix to form the full name.\n"
                },
                "region": {
                    "type": "string",
                    "description": "The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints).\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "eventGeneratorName",
                "region"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationEventBridge resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Your AWS Account ID without dashes.\n"
                    },
                    "createEventBus": {
                        "type": "boolean",
                        "description": "True if Datadog should create the event bus in addition to the event source. Requires the `events:CreateEventBus` permission. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "eventGeneratorName": {
                        "type": "string",
                        "description": "The given part of the event source name, which is then combined with an assigned suffix to form the full name.\n"
                    },
                    "region": {
                        "type": "string",
                        "description": "The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints).\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:aws/integrationExternalId:IntegrationExternalId": {
            "description": "!\u003eA new external ID must be used to create an AWS account integration in Datadog within 48 hours of creation or it will expire.\n\n!\u003eRunning `terraform destroy` only removes the resource from Terraform state and does not deactivate anything in Datadog or AWS.\n\nProvides a Datadog-Amazon Web Services external ID resource. This can be used to create Datadog-Amazon Web Services external IDs\n\nThis resource can be used in conjunction with the \u003cspan pulumi-lang-nodejs=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-dotnet=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-go=\"`aws.IntegrationAccount`\" pulumi-lang-python=\"`aws.IntegrationAccount`\" pulumi-lang-yaml=\"`datadog.aws.IntegrationAccount`\" pulumi-lang-java=\"`datadog.aws.IntegrationAccount`\"\u003e`datadog.aws.IntegrationAccount`\u003c/span\u003e resource. The external ID value can be referenced as shown:\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst foo = new datadog.aws.IntegrationExternalId(\"foo\", {});\nconst foo_defaults = new datadog.aws.IntegrationAccount(\"foo-defaults\", {\n    awsAccountId: \"123456789019\",\n    awsPartition: \"aws\",\n    authConfig: [{\n        awsAuthConfigRole: [{\n            roleName: \"DatadogIntegrationRole\",\n            externalId: foo.id,\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nfoo = datadog.aws.IntegrationExternalId(\"foo\")\nfoo_defaults = datadog.aws.IntegrationAccount(\"foo-defaults\",\n    aws_account_id=\"123456789019\",\n    aws_partition=\"aws\",\n    auth_config=[{\n        \"awsAuthConfigRole\": [{\n            \"roleName\": \"DatadogIntegrationRole\",\n            \"externalId\": foo.id,\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var foo = new Datadog.Aws.IntegrationExternalId(\"foo\");\n\n    var foo_defaults = new Datadog.Aws.IntegrationAccount(\"foo-defaults\", new()\n    {\n        AwsAccountId = \"123456789019\",\n        AwsPartition = \"aws\",\n        AuthConfig = new[]\n        {\n            \n            {\n                { \"awsAuthConfigRole\", new[]\n                {\n                    \n                    {\n                        { \"roleName\", \"DatadogIntegrationRole\" },\n                        { \"externalId\", foo.Id },\n                    },\n                } },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo, err := aws.NewIntegrationExternalId(ctx, \"foo\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = aws.NewIntegrationAccount(ctx, \"foo-defaults\", \u0026aws.IntegrationAccountArgs{\n\t\t\tAwsAccountId: pulumi.String(\"123456789019\"),\n\t\t\tAwsPartition: pulumi.String(\"aws\"),\n\t\t\tAuthConfig: aws.IntegrationAccountAuthConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"awsAuthConfigRole\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"roleName\":   \"DatadogIntegrationRole\",\n\t\t\t\t\t\t\t\"externalId\": foo.ID(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.aws.IntegrationExternalId;\nimport com.pulumi.datadog.aws.IntegrationAccount;\nimport com.pulumi.datadog.aws.IntegrationAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var foo = new IntegrationExternalId(\"foo\");\n\n        var foo_defaults = new IntegrationAccount(\"foo-defaults\", IntegrationAccountArgs.builder()\n            .awsAccountId(\"123456789019\")\n            .awsPartition(\"aws\")\n            .authConfig(IntegrationAccountAuthConfigArgs.builder()\n                .awsAuthConfigRole(IntegrationAccountAuthConfigAwsAuthConfigRoleArgs.builder()\n                    .roleName(\"DatadogIntegrationRole\")\n                    .externalId(foo.id())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  foo:\n    type: datadog:aws:IntegrationExternalId\n  foo-defaults:\n    type: datadog:aws:IntegrationAccount\n    properties:\n      awsAccountId: '123456789019'\n      awsPartition: aws\n      authConfig:\n        - awsAuthConfigRole:\n            - roleName: DatadogIntegrationRole\n              externalId: ${foo.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nTo force a new external ID value to regenerate, you can use the `-replace` flag:\n\n```shell\npulumi up -replace=\"datadog_integration_aws_external_id.foo\"\n```\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new integration_aws_external_id resource\nconst foo = new datadog.aws.IntegrationExternalId(\"foo\", {});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new integration_aws_external_id resource\nfoo = datadog.aws.IntegrationExternalId(\"foo\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new integration_aws_external_id resource\n    var foo = new Datadog.Aws.IntegrationExternalId(\"foo\");\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/aws\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new integration_aws_external_id resource\n\t\t_, err := aws.NewIntegrationExternalId(ctx, \"foo\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.aws.IntegrationExternalId;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new integration_aws_external_id resource\n        var foo = new IntegrationExternalId(\"foo\");\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new integration_aws_external_id resource\n  foo:\n    type: datadog:aws:IntegrationExternalId\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nAmazon Web Services external IDs can be imported using the ID value.\n\n```sh\n$ pulumi import datadog:aws/integrationExternalId:IntegrationExternalId foo ${id}\n```\n\n",
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationExternalId resources.\n",
                "type": "object"
            }
        },
        "datadog:azure/integration:Integration": {
            "description": "Provides a Datadog - Microsoft Azure integration resource. This can be used to create and manage the integrations.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create a new Datadog - Microsoft Azure integration\nconst sandbox = new datadog.azure.Integration(\"sandbox\", {\n    tenantName: \"\u003cazure_tenant_name\u003e\",\n    clientId: \"\u003cazure_client_id\u003e\",\n    clientSecret: \"\u003cazure_client_secret_key\u003e\",\n    hostFilters: \"examplefilter:true,example:true\",\n    appServicePlanFilters: \"examplefilter:true,example:another\",\n    containerAppFilters: \"examplefilter:true,example:one_more\",\n    automute: true,\n    cspmEnabled: true,\n    customMetricsEnabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create a new Datadog - Microsoft Azure integration\nsandbox = datadog.azure.Integration(\"sandbox\",\n    tenant_name=\"\u003cazure_tenant_name\u003e\",\n    client_id=\"\u003cazure_client_id\u003e\",\n    client_secret=\"\u003cazure_client_secret_key\u003e\",\n    host_filters=\"examplefilter:true,example:true\",\n    app_service_plan_filters=\"examplefilter:true,example:another\",\n    container_app_filters=\"examplefilter:true,example:one_more\",\n    automute=True,\n    cspm_enabled=True,\n    custom_metrics_enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a new Datadog - Microsoft Azure integration\n    var sandbox = new Datadog.Azure.Integration(\"sandbox\", new()\n    {\n        TenantName = \"\u003cazure_tenant_name\u003e\",\n        ClientId = \"\u003cazure_client_id\u003e\",\n        ClientSecret = \"\u003cazure_client_secret_key\u003e\",\n        HostFilters = \"examplefilter:true,example:true\",\n        AppServicePlanFilters = \"examplefilter:true,example:another\",\n        ContainerAppFilters = \"examplefilter:true,example:one_more\",\n        Automute = true,\n        CspmEnabled = true,\n        CustomMetricsEnabled = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/azure\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new Datadog - Microsoft Azure integration\n\t\t_, err := azure.NewIntegration(ctx, \"sandbox\", \u0026azure.IntegrationArgs{\n\t\t\tTenantName:            pulumi.String(\"\u003cazure_tenant_name\u003e\"),\n\t\t\tClientId:              pulumi.String(\"\u003cazure_client_id\u003e\"),\n\t\t\tClientSecret:          pulumi.String(\"\u003cazure_client_secret_key\u003e\"),\n\t\t\tHostFilters:           pulumi.String(\"examplefilter:true,example:true\"),\n\t\t\tAppServicePlanFilters: pulumi.String(\"examplefilter:true,example:another\"),\n\t\t\tContainerAppFilters:   pulumi.String(\"examplefilter:true,example:one_more\"),\n\t\t\tAutomute:              pulumi.Bool(true),\n\t\t\tCspmEnabled:           pulumi.Bool(true),\n\t\t\tCustomMetricsEnabled:  pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.azure.Integration;\nimport com.pulumi.datadog.azure.IntegrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create a new Datadog - Microsoft Azure integration\n        var sandbox = new Integration(\"sandbox\", IntegrationArgs.builder()\n            .tenantName(\"\u003cazure_tenant_name\u003e\")\n            .clientId(\"\u003cazure_client_id\u003e\")\n            .clientSecret(\"\u003cazure_client_secret_key\u003e\")\n            .hostFilters(\"examplefilter:true,example:true\")\n            .appServicePlanFilters(\"examplefilter:true,example:another\")\n            .containerAppFilters(\"examplefilter:true,example:one_more\")\n            .automute(true)\n            .cspmEnabled(true)\n            .customMetricsEnabled(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a new Datadog - Microsoft Azure integration\n  sandbox:\n    type: datadog:azure:Integration\n    properties:\n      tenantName: \u003cazure_tenant_name\u003e\n      clientId: \u003cazure_client_id\u003e\n      clientSecret: \u003cazure_client_secret_key\u003e\n      hostFilters: examplefilter:true,example:true\n      appServicePlanFilters: examplefilter:true,example:another\n      containerAppFilters: examplefilter:true,example:one_more\n      automute: true\n      cspmEnabled: true\n      customMetricsEnabled: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nMicrosoft Azure integrations can be imported using their `tenant name` and \u003cspan pulumi-lang-nodejs=\"`client`\" pulumi-lang-dotnet=\"`Client`\" pulumi-lang-go=\"`client`\" pulumi-lang-python=\"`client`\" pulumi-lang-yaml=\"`client`\" pulumi-lang-java=\"`client`\"\u003e`client`\u003c/span\u003e id separated with a colon (`:`).\nThe\u003cspan pulumi-lang-nodejs=\" clientSecret \" pulumi-lang-dotnet=\" ClientSecret \" pulumi-lang-go=\" clientSecret \" pulumi-lang-python=\" client_secret \" pulumi-lang-yaml=\" clientSecret \" pulumi-lang-java=\" clientSecret \"\u003e clientSecret \u003c/span\u003eshould be passed by setting the environment variable CLIENT_SECRET\n\n```sh\n$ pulumi import datadog:azure/integration:Integration sandbox ${tenant_name}:${client_id}\n```\n\n",
            "properties": {
                "appServicePlanFilters": {
                    "type": "string",
                    "description": "This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to `\"\"`.\n"
                },
                "automute": {
                    "type": "boolean",
                    "description": "Silence monitors for expected Azure VM shutdowns. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Your Azure web application ID.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "(Required for Initial Creation) Your Azure web application secret key.\n",
                    "secret": true
                },
                "containerAppFilters": {
                    "type": "string",
                    "description": "This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to `\"\"`.\n"
                },
                "cspmEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.\nNote: This requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to be set to true. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "customMetricsEnabled": {
                    "type": "boolean",
                    "description": "Enable custom metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "hostFilters": {
                    "type": "string",
                    "description": "String of host tag(s) (in the form `key:value,key:value`) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. `env:production,deploymentgroup:red` Defaults to `\"\"`.\n"
                },
                "metricsEnabled": {
                    "type": "boolean",
                    "description": "Enable Azure metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "metricsEnabledDefault": {
                    "type": "boolean",
                    "description": "Enable Azure metrics for your organization for resource providers where no resource provider config is specified. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "resourceCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.\n"
                },
                "resourceProviderConfigs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:azure/IntegrationResourceProviderConfig:IntegrationResourceProviderConfig"
                    },
                    "description": "Configuration settings applied to resources from the specified Azure resource providers.\n"
                },
                "tenantName": {
                    "type": "string",
                    "description": "Your Azure Active Directory ID.\n"
                },
                "usageMetricsEnabled": {
                    "type": "boolean",
                    "description": "Enable azure.usage metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                }
            },
            "required": [
                "appServicePlanFilters",
                "automute",
                "clientId",
                "clientSecret",
                "containerAppFilters",
                "cspmEnabled",
                "customMetricsEnabled",
                "hostFilters",
                "metricsEnabled",
                "metricsEnabledDefault",
                "resourceCollectionEnabled",
                "resourceProviderConfigs",
                "tenantName",
                "usageMetricsEnabled"
            ],
            "inputProperties": {
                "appServicePlanFilters": {
                    "type": "string",
                    "description": "This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to `\"\"`.\n"
                },
                "automute": {
                    "type": "boolean",
                    "description": "Silence monitors for expected Azure VM shutdowns. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Your Azure web application ID.\n"
                },
                "clientSecret": {
                    "type": "string",
                    "description": "(Required for Initial Creation) Your Azure web application secret key.\n",
                    "secret": true
                },
                "containerAppFilters": {
                    "type": "string",
                    "description": "This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to `\"\"`.\n"
                },
                "cspmEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.\nNote: This requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to be set to true. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "customMetricsEnabled": {
                    "type": "boolean",
                    "description": "Enable custom metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "hostFilters": {
                    "type": "string",
                    "description": "String of host tag(s) (in the form `key:value,key:value`) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. `env:production,deploymentgroup:red` Defaults to `\"\"`.\n"
                },
                "metricsEnabled": {
                    "type": "boolean",
                    "description": "Enable Azure metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "metricsEnabledDefault": {
                    "type": "boolean",
                    "description": "Enable Azure metrics for your organization for resource providers where no resource provider config is specified. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "resourceCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.\n"
                },
                "resourceProviderConfigs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:azure/IntegrationResourceProviderConfig:IntegrationResourceProviderConfig"
                    },
                    "description": "Configuration settings applied to resources from the specified Azure resource providers.\n"
                },
                "tenantName": {
                    "type": "string",
                    "description": "Your Azure Active Directory ID.\n"
                },
                "usageMetricsEnabled": {
                    "type": "boolean",
                    "description": "Enable azure.usage metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "clientId",
                "clientSecret",
                "tenantName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Integration resources.\n",
                "properties": {
                    "appServicePlanFilters": {
                        "type": "string",
                        "description": "This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure App Service Plans. Only App Service Plans that match one of the defined tags are imported into Datadog. The rest, including the apps and functions running on them, are ignored. This also filters the metrics for any App or Function running on the App Service Plan(s). Defaults to `\"\"`.\n"
                    },
                    "automute": {
                        "type": "boolean",
                        "description": "Silence monitors for expected Azure VM shutdowns. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "clientId": {
                        "type": "string",
                        "description": "Your Azure web application ID.\n"
                    },
                    "clientSecret": {
                        "type": "string",
                        "description": "(Required for Initial Creation) Your Azure web application secret key.\n",
                        "secret": true
                    },
                    "containerAppFilters": {
                        "type": "string",
                        "description": "This comma-separated list of tags (in the form `key:value,key:value`) defines a filter that Datadog uses when collecting metrics from Azure Container Apps. Only Container Apps that match one of the defined tags are imported into Datadog. Defaults to `\"\"`.\n"
                    },
                    "cspmEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration.\nNote: This requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to be set to true. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "customMetricsEnabled": {
                        "type": "boolean",
                        "description": "Enable custom metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "hostFilters": {
                        "type": "string",
                        "description": "String of host tag(s) (in the form `key:value,key:value`) defines a filter that Datadog will use when collecting metrics from Azure. Limit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. e.x. `env:production,deploymentgroup:red` Defaults to `\"\"`.\n"
                    },
                    "metricsEnabled": {
                        "type": "boolean",
                        "description": "Enable Azure metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "metricsEnabledDefault": {
                        "type": "boolean",
                        "description": "Enable Azure metrics for your organization for resource providers where no resource provider config is specified. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "resourceCollectionEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog collects metadata and configuration info from cloud resources (such as compute instances, databases, and load balancers) monitored by this app registration.\n"
                    },
                    "resourceProviderConfigs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:azure/IntegrationResourceProviderConfig:IntegrationResourceProviderConfig"
                        },
                        "description": "Configuration settings applied to resources from the specified Azure resource providers.\n"
                    },
                    "tenantName": {
                        "type": "string",
                        "description": "Your Azure Active Directory ID.\n"
                    },
                    "usageMetricsEnabled": {
                        "type": "boolean",
                        "description": "Enable azure.usage metrics for your organization. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:cloudflare/integrationAccount:IntegrationAccount": {
            "description": "Provides a Datadog IntegrationCloudflareAccount resource. This can be used to create and manage Datadog integration_cloudflare_account.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new integration_cloudflare_account resource\nconst foo = new datadog.cloudflare.IntegrationAccount(\"foo\", {\n    apiKey: \"12345678910abc\",\n    email: \"test-email@example.com\",\n    name: \"test-name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new integration_cloudflare_account resource\nfoo = datadog.cloudflare.IntegrationAccount(\"foo\",\n    api_key=\"12345678910abc\",\n    email=\"test-email@example.com\",\n    name=\"test-name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new integration_cloudflare_account resource\n    var foo = new Datadog.Cloudflare.IntegrationAccount(\"foo\", new()\n    {\n        ApiKey = \"12345678910abc\",\n        Email = \"test-email@example.com\",\n        Name = \"test-name\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/cloudflare\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new integration_cloudflare_account resource\n\t\t_, err := cloudflare.NewIntegrationAccount(ctx, \"foo\", \u0026cloudflare.IntegrationAccountArgs{\n\t\t\tApiKey: pulumi.String(\"12345678910abc\"),\n\t\t\tEmail:  pulumi.String(\"test-email@example.com\"),\n\t\t\tName:   pulumi.String(\"test-name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.cloudflare.IntegrationAccount;\nimport com.pulumi.datadog.cloudflare.IntegrationAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new integration_cloudflare_account resource\n        var foo = new IntegrationAccount(\"foo\", IntegrationAccountArgs.builder()\n            .apiKey(\"12345678910abc\")\n            .email(\"test-email@example.com\")\n            .name(\"test-name\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new integration_cloudflare_account resource\n  foo:\n    type: datadog:cloudflare:IntegrationAccount\n    properties:\n      apiKey: 12345678910abc\n      email: test-email@example.com\n      name: test-name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:cloudflare/integrationAccount:IntegrationAccount new_list \"\u003cID\u003e\"\n```\n\n",
            "properties": {
                "apiKey": {
                    "type": "string",
                    "description": "The API key (or token) for the Cloudflare account.\n",
                    "secret": true
                },
                "email": {
                    "type": "string",
                    "description": "The email associated with the Cloudflare account. If an API key is provided (and not a token), this field is also required.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Cloudflare account.\n"
                },
                "resources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An allowlist of resources to pull metrics for. Includes \u003cspan pulumi-lang-nodejs=\"`web`\" pulumi-lang-dotnet=\"`Web`\" pulumi-lang-go=\"`web`\" pulumi-lang-python=\"`web`\" pulumi-lang-yaml=\"`web`\" pulumi-lang-java=\"`web`\"\u003e`web`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lb`\" pulumi-lang-dotnet=\"`Lb`\" pulumi-lang-go=\"`lb`\" pulumi-lang-python=\"`lb`\" pulumi-lang-yaml=\"`lb`\" pulumi-lang-java=\"`lb`\"\u003e`lb`\u003c/span\u003e (load balancer), and \u003cspan pulumi-lang-nodejs=\"`worker`\" pulumi-lang-dotnet=\"`Worker`\" pulumi-lang-go=\"`worker`\" pulumi-lang-python=\"`worker`\" pulumi-lang-yaml=\"`worker`\" pulumi-lang-java=\"`worker`\"\u003e`worker`\u003c/span\u003e).\n"
                }
            },
            "required": [
                "apiKey",
                "name",
                "resources"
            ],
            "inputProperties": {
                "apiKey": {
                    "type": "string",
                    "description": "The API key (or token) for the Cloudflare account.\n",
                    "secret": true
                },
                "email": {
                    "type": "string",
                    "description": "The email associated with the Cloudflare account. If an API key is provided (and not a token), this field is also required.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Cloudflare account.\n"
                },
                "resources": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An allowlist of resources to pull metrics for. Includes \u003cspan pulumi-lang-nodejs=\"`web`\" pulumi-lang-dotnet=\"`Web`\" pulumi-lang-go=\"`web`\" pulumi-lang-python=\"`web`\" pulumi-lang-yaml=\"`web`\" pulumi-lang-java=\"`web`\"\u003e`web`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lb`\" pulumi-lang-dotnet=\"`Lb`\" pulumi-lang-go=\"`lb`\" pulumi-lang-python=\"`lb`\" pulumi-lang-yaml=\"`lb`\" pulumi-lang-java=\"`lb`\"\u003e`lb`\u003c/span\u003e (load balancer), and \u003cspan pulumi-lang-nodejs=\"`worker`\" pulumi-lang-dotnet=\"`Worker`\" pulumi-lang-go=\"`worker`\" pulumi-lang-python=\"`worker`\" pulumi-lang-yaml=\"`worker`\" pulumi-lang-java=\"`worker`\"\u003e`worker`\u003c/span\u003e).\n"
                }
            },
            "requiredInputs": [
                "apiKey",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationAccount resources.\n",
                "properties": {
                    "apiKey": {
                        "type": "string",
                        "description": "The API key (or token) for the Cloudflare account.\n",
                        "secret": true
                    },
                    "email": {
                        "type": "string",
                        "description": "The email associated with the Cloudflare account. If an API key is provided (and not a token), this field is also required.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Cloudflare account.\n"
                    },
                    "resources": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "An allowlist of resources to pull metrics for. Includes \u003cspan pulumi-lang-nodejs=\"`web`\" pulumi-lang-dotnet=\"`Web`\" pulumi-lang-go=\"`web`\" pulumi-lang-python=\"`web`\" pulumi-lang-yaml=\"`web`\" pulumi-lang-java=\"`web`\"\u003e`web`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dns`\" pulumi-lang-dotnet=\"`Dns`\" pulumi-lang-go=\"`dns`\" pulumi-lang-python=\"`dns`\" pulumi-lang-yaml=\"`dns`\" pulumi-lang-java=\"`dns`\"\u003e`dns`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lb`\" pulumi-lang-dotnet=\"`Lb`\" pulumi-lang-go=\"`lb`\" pulumi-lang-python=\"`lb`\" pulumi-lang-yaml=\"`lb`\" pulumi-lang-java=\"`lb`\"\u003e`lb`\u003c/span\u003e (load balancer), and \u003cspan pulumi-lang-nodejs=\"`worker`\" pulumi-lang-dotnet=\"`Worker`\" pulumi-lang-go=\"`worker`\" pulumi-lang-python=\"`worker`\" pulumi-lang-yaml=\"`worker`\" pulumi-lang-java=\"`worker`\"\u003e`worker`\u003c/span\u003e).\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:confluent/integrationAccount:IntegrationAccount": {
            "description": "Provides a Datadog IntegrationConfluentAccount resource. This can be used to create and manage Datadog integration_confluent_account.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new integration_confluent_account resource\nconst foo = new datadog.confluent.IntegrationAccount(\"foo\", {\n    apiKey: \"TESTAPIKEY123\",\n    apiSecret: \"test-api-secret-123\",\n    tags: [\n        \"mytag\",\n        \"mytag2:myvalue\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new integration_confluent_account resource\nfoo = datadog.confluent.IntegrationAccount(\"foo\",\n    api_key=\"TESTAPIKEY123\",\n    api_secret=\"test-api-secret-123\",\n    tags=[\n        \"mytag\",\n        \"mytag2:myvalue\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new integration_confluent_account resource\n    var foo = new Datadog.Confluent.IntegrationAccount(\"foo\", new()\n    {\n        ApiKey = \"TESTAPIKEY123\",\n        ApiSecret = \"test-api-secret-123\",\n        Tags = new[]\n        {\n            \"mytag\",\n            \"mytag2:myvalue\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/confluent\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new integration_confluent_account resource\n\t\t_, err := confluent.NewIntegrationAccount(ctx, \"foo\", \u0026confluent.IntegrationAccountArgs{\n\t\t\tApiKey:    pulumi.String(\"TESTAPIKEY123\"),\n\t\t\tApiSecret: pulumi.String(\"test-api-secret-123\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"mytag\"),\n\t\t\t\tpulumi.String(\"mytag2:myvalue\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.confluent.IntegrationAccount;\nimport com.pulumi.datadog.confluent.IntegrationAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new integration_confluent_account resource\n        var foo = new IntegrationAccount(\"foo\", IntegrationAccountArgs.builder()\n            .apiKey(\"TESTAPIKEY123\")\n            .apiSecret(\"test-api-secret-123\")\n            .tags(            \n                \"mytag\",\n                \"mytag2:myvalue\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new integration_confluent_account resource\n  foo:\n    type: datadog:confluent:IntegrationAccount\n    properties:\n      apiKey: TESTAPIKEY123\n      apiSecret: test-api-secret-123\n      tags:\n        - mytag\n        - mytag2:myvalue\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nConfluent account ID can be retrieved using the ListConfluentAccounts endpoint\nhttps://docs.datadoghq.com/api/latest/confluent-cloud/#list-confluent-accounts\n\n```sh\n$ pulumi import datadog:confluent/integrationAccount:IntegrationAccount new_list \"\u003cID\u003e\"\n```\n\n",
            "properties": {
                "apiKey": {
                    "type": "string",
                    "description": "The API key associated with your Confluent account.\n"
                },
                "apiSecret": {
                    "type": "string",
                    "description": "The API secret associated with your Confluent account.\n",
                    "secret": true
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon.\n"
                }
            },
            "required": [
                "apiKey",
                "apiSecret"
            ],
            "inputProperties": {
                "apiKey": {
                    "type": "string",
                    "description": "The API key associated with your Confluent account.\n"
                },
                "apiSecret": {
                    "type": "string",
                    "description": "The API secret associated with your Confluent account.\n",
                    "secret": true
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon.\n"
                }
            },
            "requiredInputs": [
                "apiKey",
                "apiSecret"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationAccount resources.\n",
                "properties": {
                    "apiKey": {
                        "type": "string",
                        "description": "The API key associated with your Confluent account.\n"
                    },
                    "apiSecret": {
                        "type": "string",
                        "description": "The API secret associated with your Confluent account.\n",
                        "secret": true
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:confluent/integrationResource:IntegrationResource": {
            "description": "Provides a Datadog IntegrationConfluentResource resource. This can be used to create and manage Datadog integration_confluent_resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst foo = new datadog.confluent.IntegrationAccount(\"foo\", {\n    apiKey: \"TESTAPIKEY123\",\n    apiSecret: \"test-api-secret-123\",\n    tags: [\n        \"mytag\",\n        \"mytag2:myvalue\",\n    ],\n});\n// Create new integration_confluent_resource resource\nconst fooIntegrationResource = new datadog.confluent.IntegrationResource(\"foo\", {\n    accountId: foo.id,\n    resourceId: \"123456\",\n    resourceType: \"kafka\",\n    tags: [\n        \"mytag\",\n        \"mytag2:myvalue\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nfoo = datadog.confluent.IntegrationAccount(\"foo\",\n    api_key=\"TESTAPIKEY123\",\n    api_secret=\"test-api-secret-123\",\n    tags=[\n        \"mytag\",\n        \"mytag2:myvalue\",\n    ])\n# Create new integration_confluent_resource resource\nfoo_integration_resource = datadog.confluent.IntegrationResource(\"foo\",\n    account_id=foo.id,\n    resource_id=\"123456\",\n    resource_type=\"kafka\",\n    tags=[\n        \"mytag\",\n        \"mytag2:myvalue\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var foo = new Datadog.Confluent.IntegrationAccount(\"foo\", new()\n    {\n        ApiKey = \"TESTAPIKEY123\",\n        ApiSecret = \"test-api-secret-123\",\n        Tags = new[]\n        {\n            \"mytag\",\n            \"mytag2:myvalue\",\n        },\n    });\n\n    // Create new integration_confluent_resource resource\n    var fooIntegrationResource = new Datadog.Confluent.IntegrationResource(\"foo\", new()\n    {\n        AccountId = foo.Id,\n        ResourceId = \"123456\",\n        ResourceType = \"kafka\",\n        Tags = new[]\n        {\n            \"mytag\",\n            \"mytag2:myvalue\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/confluent\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo, err := confluent.NewIntegrationAccount(ctx, \"foo\", \u0026confluent.IntegrationAccountArgs{\n\t\t\tApiKey:    pulumi.String(\"TESTAPIKEY123\"),\n\t\t\tApiSecret: pulumi.String(\"test-api-secret-123\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"mytag\"),\n\t\t\t\tpulumi.String(\"mytag2:myvalue\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create new integration_confluent_resource resource\n\t\t_, err = confluent.NewIntegrationResource(ctx, \"foo\", \u0026confluent.IntegrationResourceArgs{\n\t\t\tAccountId:    foo.ID(),\n\t\t\tResourceId:   pulumi.String(\"123456\"),\n\t\t\tResourceType: pulumi.String(\"kafka\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"mytag\"),\n\t\t\t\tpulumi.String(\"mytag2:myvalue\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.confluent.IntegrationAccount;\nimport com.pulumi.datadog.confluent.IntegrationAccountArgs;\nimport com.pulumi.datadog.confluent.IntegrationResource;\nimport com.pulumi.datadog.confluent.IntegrationResourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var foo = new IntegrationAccount(\"foo\", IntegrationAccountArgs.builder()\n            .apiKey(\"TESTAPIKEY123\")\n            .apiSecret(\"test-api-secret-123\")\n            .tags(            \n                \"mytag\",\n                \"mytag2:myvalue\")\n            .build());\n\n        // Create new integration_confluent_resource resource\n        var fooIntegrationResource = new IntegrationResource(\"fooIntegrationResource\", IntegrationResourceArgs.builder()\n            .accountId(foo.id())\n            .resourceId(\"123456\")\n            .resourceType(\"kafka\")\n            .tags(            \n                \"mytag\",\n                \"mytag2:myvalue\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  foo:\n    type: datadog:confluent:IntegrationAccount\n    properties:\n      apiKey: TESTAPIKEY123\n      apiSecret: test-api-secret-123\n      tags:\n        - mytag\n        - mytag2:myvalue\n  # Create new integration_confluent_resource resource\n  fooIntegrationResource:\n    type: datadog:confluent:IntegrationResource\n    name: foo\n    properties:\n      accountId: ${foo.id}\n      resourceId: '123456'\n      resourceType: kafka\n      tags:\n        - mytag\n        - mytag2:myvalue\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:confluent/integrationResource:IntegrationResource new_list \"confluent_account_id:confluent_resource_id\"\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Confluent Account ID.\n"
                },
                "enableCustomMetrics": {
                    "type": "boolean",
                    "description": "Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "resourceId": {
                    "type": "string",
                    "description": "The ID associated with a Confluent resource.\n"
                },
                "resourceType": {
                    "type": "string",
                    "description": "The resource type of the Resource. Can be \u003cspan pulumi-lang-nodejs=\"`kafka`\" pulumi-lang-dotnet=\"`Kafka`\" pulumi-lang-go=\"`kafka`\" pulumi-lang-python=\"`kafka`\" pulumi-lang-yaml=\"`kafka`\" pulumi-lang-java=\"`kafka`\"\u003e`kafka`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`connector`\" pulumi-lang-dotnet=\"`Connector`\" pulumi-lang-go=\"`connector`\" pulumi-lang-python=\"`connector`\" pulumi-lang-yaml=\"`connector`\" pulumi-lang-java=\"`connector`\"\u003e`connector`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ksql`\" pulumi-lang-dotnet=\"`Ksql`\" pulumi-lang-go=\"`ksql`\" pulumi-lang-python=\"`ksql`\" pulumi-lang-yaml=\"`ksql`\" pulumi-lang-java=\"`ksql`\"\u003e`ksql`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`schemaRegistry`\" pulumi-lang-dotnet=\"`SchemaRegistry`\" pulumi-lang-go=\"`schemaRegistry`\" pulumi-lang-python=\"`schema_registry`\" pulumi-lang-yaml=\"`schemaRegistry`\" pulumi-lang-java=\"`schemaRegistry`\"\u003e`schemaRegistry`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon.\n"
                }
            },
            "required": [
                "accountId",
                "enableCustomMetrics",
                "resourceId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Confluent Account ID.\n"
                },
                "enableCustomMetrics": {
                    "type": "boolean",
                    "description": "Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "resourceId": {
                    "type": "string",
                    "description": "The ID associated with a Confluent resource.\n"
                },
                "resourceType": {
                    "type": "string",
                    "description": "The resource type of the Resource. Can be \u003cspan pulumi-lang-nodejs=\"`kafka`\" pulumi-lang-dotnet=\"`Kafka`\" pulumi-lang-go=\"`kafka`\" pulumi-lang-python=\"`kafka`\" pulumi-lang-yaml=\"`kafka`\" pulumi-lang-java=\"`kafka`\"\u003e`kafka`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`connector`\" pulumi-lang-dotnet=\"`Connector`\" pulumi-lang-go=\"`connector`\" pulumi-lang-python=\"`connector`\" pulumi-lang-yaml=\"`connector`\" pulumi-lang-java=\"`connector`\"\u003e`connector`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ksql`\" pulumi-lang-dotnet=\"`Ksql`\" pulumi-lang-go=\"`ksql`\" pulumi-lang-python=\"`ksql`\" pulumi-lang-yaml=\"`ksql`\" pulumi-lang-java=\"`ksql`\"\u003e`ksql`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`schemaRegistry`\" pulumi-lang-dotnet=\"`SchemaRegistry`\" pulumi-lang-go=\"`schemaRegistry`\" pulumi-lang-python=\"`schema_registry`\" pulumi-lang-yaml=\"`schemaRegistry`\" pulumi-lang-java=\"`schemaRegistry`\"\u003e`schemaRegistry`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "resourceId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationResource resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Confluent Account ID.\n"
                    },
                    "enableCustomMetrics": {
                        "type": "boolean",
                        "description": "Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "resourceId": {
                        "type": "string",
                        "description": "The ID associated with a Confluent resource.\n"
                    },
                    "resourceType": {
                        "type": "string",
                        "description": "The resource type of the Resource. Can be \u003cspan pulumi-lang-nodejs=\"`kafka`\" pulumi-lang-dotnet=\"`Kafka`\" pulumi-lang-go=\"`kafka`\" pulumi-lang-python=\"`kafka`\" pulumi-lang-yaml=\"`kafka`\" pulumi-lang-java=\"`kafka`\"\u003e`kafka`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`connector`\" pulumi-lang-dotnet=\"`Connector`\" pulumi-lang-go=\"`connector`\" pulumi-lang-python=\"`connector`\" pulumi-lang-yaml=\"`connector`\" pulumi-lang-java=\"`connector`\"\u003e`connector`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ksql`\" pulumi-lang-dotnet=\"`Ksql`\" pulumi-lang-go=\"`ksql`\" pulumi-lang-python=\"`ksql`\" pulumi-lang-yaml=\"`ksql`\" pulumi-lang-java=\"`ksql`\"\u003e`ksql`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`schemaRegistry`\" pulumi-lang-dotnet=\"`SchemaRegistry`\" pulumi-lang-go=\"`schemaRegistry`\" pulumi-lang-python=\"`schema_registry`\" pulumi-lang-yaml=\"`schemaRegistry`\" pulumi-lang-java=\"`schemaRegistry`\"\u003e`schemaRegistry`\u003c/span\u003e.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:fastly/integrationAccount:IntegrationAccount": {
            "description": "Provides a Datadog IntegrationFastlyAccount resource. This can be used to create and manage Datadog integration_fastly_account.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new integration_fastly_account resource\nconst foo = new datadog.fastly.IntegrationAccount(\"foo\", {\n    apiKey: \"ABCDEFG123\",\n    name: \"test-name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new integration_fastly_account resource\nfoo = datadog.fastly.IntegrationAccount(\"foo\",\n    api_key=\"ABCDEFG123\",\n    name=\"test-name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new integration_fastly_account resource\n    var foo = new Datadog.Fastly.IntegrationAccount(\"foo\", new()\n    {\n        ApiKey = \"ABCDEFG123\",\n        Name = \"test-name\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/fastly\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new integration_fastly_account resource\n\t\t_, err := fastly.NewIntegrationAccount(ctx, \"foo\", \u0026fastly.IntegrationAccountArgs{\n\t\t\tApiKey: pulumi.String(\"ABCDEFG123\"),\n\t\t\tName:   pulumi.String(\"test-name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.fastly.IntegrationAccount;\nimport com.pulumi.datadog.fastly.IntegrationAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new integration_fastly_account resource\n        var foo = new IntegrationAccount(\"foo\", IntegrationAccountArgs.builder()\n            .apiKey(\"ABCDEFG123\")\n            .name(\"test-name\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new integration_fastly_account resource\n  foo:\n    type: datadog:fastly:IntegrationAccount\n    properties:\n      apiKey: ABCDEFG123\n      name: test-name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:fastly/integrationAccount:IntegrationAccount new_list \"a8f5f167f44f4964e6c998dee827110c\"\n```\n\n",
            "properties": {
                "apiKey": {
                    "type": "string",
                    "description": "The API key for the Fastly account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Fastly account.\n"
                }
            },
            "required": [
                "apiKey",
                "name"
            ],
            "inputProperties": {
                "apiKey": {
                    "type": "string",
                    "description": "The API key for the Fastly account.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Fastly account.\n"
                }
            },
            "requiredInputs": [
                "apiKey",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationAccount resources.\n",
                "properties": {
                    "apiKey": {
                        "type": "string",
                        "description": "The API key for the Fastly account.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Fastly account.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:fastly/integrationService:IntegrationService": {
            "description": "Provides a Datadog IntegrationFastlyService resource. This can be used to create and manage Datadog integration_fastly_service.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst foo = new datadog.fastly.IntegrationAccount(\"foo\", {\n    apiKey: \"ABCDEFG123\",\n    name: \"test-name\",\n});\n// Create new integration_fastly_service resource\nconst fooIntegrationService = new datadog.fastly.IntegrationService(\"foo\", {\n    accountId: foo.id,\n    tags: [\n        \"mytag\",\n        \"mytag2:myvalue\",\n    ],\n    serviceId: \"my-service-id\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nfoo = datadog.fastly.IntegrationAccount(\"foo\",\n    api_key=\"ABCDEFG123\",\n    name=\"test-name\")\n# Create new integration_fastly_service resource\nfoo_integration_service = datadog.fastly.IntegrationService(\"foo\",\n    account_id=foo.id,\n    tags=[\n        \"mytag\",\n        \"mytag2:myvalue\",\n    ],\n    service_id=\"my-service-id\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var foo = new Datadog.Fastly.IntegrationAccount(\"foo\", new()\n    {\n        ApiKey = \"ABCDEFG123\",\n        Name = \"test-name\",\n    });\n\n    // Create new integration_fastly_service resource\n    var fooIntegrationService = new Datadog.Fastly.IntegrationService(\"foo\", new()\n    {\n        AccountId = foo.Id,\n        Tags = new[]\n        {\n            \"mytag\",\n            \"mytag2:myvalue\",\n        },\n        ServiceId = \"my-service-id\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog/fastly\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfoo, err := fastly.NewIntegrationAccount(ctx, \"foo\", \u0026fastly.IntegrationAccountArgs{\n\t\t\tApiKey: pulumi.String(\"ABCDEFG123\"),\n\t\t\tName:   pulumi.String(\"test-name\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create new integration_fastly_service resource\n\t\t_, err = fastly.NewIntegrationService(ctx, \"foo\", \u0026fastly.IntegrationServiceArgs{\n\t\t\tAccountId: foo.ID(),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"mytag\"),\n\t\t\t\tpulumi.String(\"mytag2:myvalue\"),\n\t\t\t},\n\t\t\tServiceId: pulumi.String(\"my-service-id\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.fastly.IntegrationAccount;\nimport com.pulumi.datadog.fastly.IntegrationAccountArgs;\nimport com.pulumi.datadog.fastly.IntegrationService;\nimport com.pulumi.datadog.fastly.IntegrationServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var foo = new IntegrationAccount(\"foo\", IntegrationAccountArgs.builder()\n            .apiKey(\"ABCDEFG123\")\n            .name(\"test-name\")\n            .build());\n\n        // Create new integration_fastly_service resource\n        var fooIntegrationService = new IntegrationService(\"fooIntegrationService\", IntegrationServiceArgs.builder()\n            .accountId(foo.id())\n            .tags(            \n                \"mytag\",\n                \"mytag2:myvalue\")\n            .serviceId(\"my-service-id\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  foo:\n    type: datadog:fastly:IntegrationAccount\n    properties:\n      apiKey: ABCDEFG123\n      name: test-name\n  # Create new integration_fastly_service resource\n  fooIntegrationService:\n    type: datadog:fastly:IntegrationService\n    name: foo\n    properties:\n      accountId: ${foo.id}\n      tags:\n        - mytag\n        - mytag2:myvalue\n      serviceId: my-service-id\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:fastly/integrationService:IntegrationService new_list \"account-id:service-id\"\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "Fastly Account id.\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "The ID of the Fastly service.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags for the Fastly service.\n"
                }
            },
            "required": [
                "serviceId"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "Fastly Account id.\n"
                },
                "serviceId": {
                    "type": "string",
                    "description": "The ID of the Fastly service.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags for the Fastly service.\n"
                }
            },
            "requiredInputs": [
                "serviceId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationService resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "Fastly Account id.\n"
                    },
                    "serviceId": {
                        "type": "string",
                        "description": "The ID of the Fastly service.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of tags for the Fastly service.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:gcp/integration:Integration": {
            "description": "This resource is deprecated—use the \u003cspan pulumi-lang-nodejs=\"`datadog.gcp.IntegrationSts`\" pulumi-lang-dotnet=\"`datadog.gcp.IntegrationSts`\" pulumi-lang-go=\"`gcp.IntegrationSts`\" pulumi-lang-python=\"`gcp.IntegrationSts`\" pulumi-lang-yaml=\"`datadog.gcp.IntegrationSts`\" pulumi-lang-java=\"`datadog.gcp.IntegrationSts`\"\u003e`datadog.gcp.IntegrationSts`\u003c/span\u003e resource instead. Provides a Datadog - Google Cloud Platform integration resource. This can be used to create and manage Datadog - Google Cloud Platform integration.\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nGoogle Cloud Platform integrations can be imported using their project ID, e.g.\n\n```sh\n$ pulumi import datadog:gcp/integration:Integration awesome_gcp_project_integration project_id\n```\n\n",
            "properties": {
                "automute": {
                    "type": "boolean",
                    "description": "Silence monitors for expected GCE instance shutdowns. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "clientEmail": {
                    "type": "string",
                    "description": "Your email found in your JSON service account key.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Your ID found in your JSON service account key.\n"
                },
                "cloudRunRevisionFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. Only Cloud Run revision resources that apply to specified filters are imported into Datadog.\n",
                    "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=cloud_run_revision`"
                },
                "cspmResourceCollectionEnabled": {
                    "type": "boolean",
                    "description": "Whether Datadog collects cloud security posture management resources from your GCP project. If enabled, requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to also be enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "hostFilters": {
                    "type": "string",
                    "description": "List of filters to limit the VM instances that are pulled into Datadog by using tags. Only VM instance resources that apply to specified filters are imported into Datadog.\n",
                    "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=gce_instance`"
                },
                "isResourceChangeCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog scans for all resource change data in your Google Cloud environment.\n"
                },
                "isSecurityCommandCenterEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "monitoredResourceConfigs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:gcp/IntegrationMonitoredResourceConfig:IntegrationMonitoredResourceConfig"
                    },
                    "description": "Configurations for GCP monitored resources. Only monitored resources that apply to specified filters are imported into Datadog.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "Your private key name found in your JSON service account key.\n",
                    "secret": true
                },
                "privateKeyId": {
                    "type": "string",
                    "description": "Your private key ID found in your JSON service account key.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Your Google Cloud project ID found in your JSON service account key.\n"
                },
                "resourceCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog scans for all resources in your GCP environment.\n"
                }
            },
            "required": [
                "automute",
                "clientEmail",
                "clientId",
                "cloudRunRevisionFilters",
                "cspmResourceCollectionEnabled",
                "hostFilters",
                "isResourceChangeCollectionEnabled",
                "isSecurityCommandCenterEnabled",
                "monitoredResourceConfigs",
                "privateKey",
                "privateKeyId",
                "projectId",
                "resourceCollectionEnabled"
            ],
            "inputProperties": {
                "automute": {
                    "type": "boolean",
                    "description": "Silence monitors for expected GCE instance shutdowns. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "clientEmail": {
                    "type": "string",
                    "description": "Your email found in your JSON service account key.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "Your ID found in your JSON service account key.\n"
                },
                "cloudRunRevisionFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. Only Cloud Run revision resources that apply to specified filters are imported into Datadog.\n",
                    "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=cloud_run_revision`"
                },
                "cspmResourceCollectionEnabled": {
                    "type": "boolean",
                    "description": "Whether Datadog collects cloud security posture management resources from your GCP project. If enabled, requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to also be enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "hostFilters": {
                    "type": "string",
                    "description": "List of filters to limit the VM instances that are pulled into Datadog by using tags. Only VM instance resources that apply to specified filters are imported into Datadog.\n",
                    "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=gce_instance`"
                },
                "isResourceChangeCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog scans for all resource change data in your Google Cloud environment.\n"
                },
                "isSecurityCommandCenterEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "monitoredResourceConfigs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:gcp/IntegrationMonitoredResourceConfig:IntegrationMonitoredResourceConfig"
                    },
                    "description": "Configurations for GCP monitored resources. Only monitored resources that apply to specified filters are imported into Datadog.\n"
                },
                "privateKey": {
                    "type": "string",
                    "description": "Your private key name found in your JSON service account key.\n",
                    "secret": true
                },
                "privateKeyId": {
                    "type": "string",
                    "description": "Your private key ID found in your JSON service account key.\n"
                },
                "projectId": {
                    "type": "string",
                    "description": "Your Google Cloud project ID found in your JSON service account key.\n"
                },
                "resourceCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog scans for all resources in your GCP environment.\n"
                }
            },
            "requiredInputs": [
                "clientEmail",
                "clientId",
                "privateKey",
                "privateKeyId",
                "projectId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Integration resources.\n",
                "properties": {
                    "automute": {
                        "type": "boolean",
                        "description": "Silence monitors for expected GCE instance shutdowns. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "clientEmail": {
                        "type": "string",
                        "description": "Your email found in your JSON service account key.\n"
                    },
                    "clientId": {
                        "type": "string",
                        "description": "Your ID found in your JSON service account key.\n"
                    },
                    "cloudRunRevisionFilters": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. Only Cloud Run revision resources that apply to specified filters are imported into Datadog.\n",
                        "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=cloud_run_revision`"
                    },
                    "cspmResourceCollectionEnabled": {
                        "type": "boolean",
                        "description": "Whether Datadog collects cloud security posture management resources from your GCP project. If enabled, requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to also be enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "hostFilters": {
                        "type": "string",
                        "description": "List of filters to limit the VM instances that are pulled into Datadog by using tags. Only VM instance resources that apply to specified filters are imported into Datadog.\n",
                        "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=gce_instance`"
                    },
                    "isResourceChangeCollectionEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog scans for all resource change data in your Google Cloud environment.\n"
                    },
                    "isSecurityCommandCenterEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "monitoredResourceConfigs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:gcp/IntegrationMonitoredResourceConfig:IntegrationMonitoredResourceConfig"
                        },
                        "description": "Configurations for GCP monitored resources. Only monitored resources that apply to specified filters are imported into Datadog.\n"
                    },
                    "privateKey": {
                        "type": "string",
                        "description": "Your private key name found in your JSON service account key.\n",
                        "secret": true
                    },
                    "privateKeyId": {
                        "type": "string",
                        "description": "Your private key ID found in your JSON service account key.\n"
                    },
                    "projectId": {
                        "type": "string",
                        "description": "Your Google Cloud project ID found in your JSON service account key.\n"
                    },
                    "resourceCollectionEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog scans for all resources in your GCP environment.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:gcp/integrationSts:IntegrationSts": {
            "description": "Provides a Datadog Integration GCP Sts resource. This can be used to create and manage Datadog - Google Cloud Platform integration.\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:gcp/integrationSts:IntegrationSts foo \"9c303af3-b963-45e0-8c8f-469b9e1a213f\"\n```\n\n",
            "properties": {
                "accountTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags to be associated with GCP metrics and service checks from your account.\n"
                },
                "automute": {
                    "type": "boolean",
                    "description": "Silence monitors for expected GCE instance shutdowns.\n"
                },
                "clientEmail": {
                    "type": "string",
                    "description": "Your service account email address.\n"
                },
                "cloudRunRevisionFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. Only Cloud Run revision resources that apply to specified filters are imported into Datadog.\n",
                    "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=cloud_run_revision`"
                },
                "delegateAccountEmail": {
                    "type": "string",
                    "description": "Datadog's STS Delegate Email.\n"
                },
                "hostFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of filters to limit the VM instances that are pulled into Datadog by using tags. Only VM instance resources that apply to specified filters are imported into Datadog.\n",
                    "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=gce_instance`"
                },
                "isCspmEnabled": {
                    "type": "boolean",
                    "description": "Whether Datadog collects cloud security posture management resources from your GCP project. If enabled, requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to also be enabled.\n"
                },
                "isGlobalLocationEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog collects metrics where location is explicitly stated as 'global' or where location information cannot be deduced from GCP.\n"
                },
                "isPerProjectQuotaEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog includes the `X-Goog-User-Project` header to attribute Google Cloud billing and quota usage to the monitored project instead of the default service account project.\n"
                },
                "isResourceChangeCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog scans for all resource change data in your Google Cloud environment.\n"
                },
                "isSecurityCommandCenterEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "metricNamespaceConfigs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:gcp/IntegrationStsMetricNamespaceConfig:IntegrationStsMetricNamespaceConfig"
                    },
                    "description": "Configurations for GCP metric namespaces.\n"
                },
                "monitoredResourceConfigs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:gcp/IntegrationStsMonitoredResourceConfig:IntegrationStsMonitoredResourceConfig"
                    },
                    "description": "Configurations for GCP monitored resources. Only monitored resources that apply to specified filters are imported into Datadog.\n"
                },
                "regionFilterConfigs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Configurations for GCP location filtering, such as region, multi-region, or zone. Only monitored resources that match the specified regions are imported into Datadog. By default, Datadog collects from all locations.\n"
                },
                "resourceCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog scans for all resources in your GCP environment.\n"
                }
            },
            "required": [
                "automute",
                "clientEmail",
                "cloudRunRevisionFilters",
                "delegateAccountEmail",
                "hostFilters",
                "isCspmEnabled",
                "isGlobalLocationEnabled",
                "isPerProjectQuotaEnabled",
                "isResourceChangeCollectionEnabled",
                "isSecurityCommandCenterEnabled",
                "metricNamespaceConfigs",
                "monitoredResourceConfigs",
                "resourceCollectionEnabled"
            ],
            "inputProperties": {
                "accountTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags to be associated with GCP metrics and service checks from your account.\n"
                },
                "automute": {
                    "type": "boolean",
                    "description": "Silence monitors for expected GCE instance shutdowns.\n"
                },
                "clientEmail": {
                    "type": "string",
                    "description": "Your service account email address.\n"
                },
                "cloudRunRevisionFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. Only Cloud Run revision resources that apply to specified filters are imported into Datadog.\n",
                    "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=cloud_run_revision`"
                },
                "hostFilters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of filters to limit the VM instances that are pulled into Datadog by using tags. Only VM instance resources that apply to specified filters are imported into Datadog.\n",
                    "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=gce_instance`"
                },
                "isCspmEnabled": {
                    "type": "boolean",
                    "description": "Whether Datadog collects cloud security posture management resources from your GCP project. If enabled, requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to also be enabled.\n"
                },
                "isGlobalLocationEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog collects metrics where location is explicitly stated as 'global' or where location information cannot be deduced from GCP.\n"
                },
                "isPerProjectQuotaEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog includes the `X-Goog-User-Project` header to attribute Google Cloud billing and quota usage to the monitored project instead of the default service account project.\n"
                },
                "isResourceChangeCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog scans for all resource change data in your Google Cloud environment.\n"
                },
                "isSecurityCommandCenterEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "metricNamespaceConfigs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:gcp/IntegrationStsMetricNamespaceConfig:IntegrationStsMetricNamespaceConfig"
                    },
                    "description": "Configurations for GCP metric namespaces.\n"
                },
                "monitoredResourceConfigs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:gcp/IntegrationStsMonitoredResourceConfig:IntegrationStsMonitoredResourceConfig"
                    },
                    "description": "Configurations for GCP monitored resources. Only monitored resources that apply to specified filters are imported into Datadog.\n"
                },
                "regionFilterConfigs": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Configurations for GCP location filtering, such as region, multi-region, or zone. Only monitored resources that match the specified regions are imported into Datadog. By default, Datadog collects from all locations.\n"
                },
                "resourceCollectionEnabled": {
                    "type": "boolean",
                    "description": "When enabled, Datadog scans for all resources in your GCP environment.\n"
                }
            },
            "requiredInputs": [
                "clientEmail"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IntegrationSts resources.\n",
                "properties": {
                    "accountTags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Tags to be associated with GCP metrics and service checks from your account.\n"
                    },
                    "automute": {
                        "type": "boolean",
                        "description": "Silence monitors for expected GCE instance shutdowns.\n"
                    },
                    "clientEmail": {
                        "type": "string",
                        "description": "Your service account email address.\n"
                    },
                    "cloudRunRevisionFilters": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. Only Cloud Run revision resources that apply to specified filters are imported into Datadog.\n",
                        "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=cloud_run_revision`"
                    },
                    "delegateAccountEmail": {
                        "type": "string",
                        "description": "Datadog's STS Delegate Email.\n"
                    },
                    "hostFilters": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of filters to limit the VM instances that are pulled into Datadog by using tags. Only VM instance resources that apply to specified filters are imported into Datadog.\n",
                        "deprecationMessage": "**Note:** This field is deprecated. Instead, use \u003cspan pulumi-lang-nodejs=\"`monitoredResourceConfigs`\" pulumi-lang-dotnet=\"`MonitoredResourceConfigs`\" pulumi-lang-go=\"`monitoredResourceConfigs`\" pulumi-lang-python=\"`monitored_resource_configs`\" pulumi-lang-yaml=\"`monitoredResourceConfigs`\" pulumi-lang-java=\"`monitoredResourceConfigs`\"\u003e`monitoredResourceConfigs`\u003c/span\u003e with `type=gce_instance`"
                    },
                    "isCspmEnabled": {
                        "type": "boolean",
                        "description": "Whether Datadog collects cloud security posture management resources from your GCP project. If enabled, requires \u003cspan pulumi-lang-nodejs=\"`resourceCollectionEnabled`\" pulumi-lang-dotnet=\"`ResourceCollectionEnabled`\" pulumi-lang-go=\"`resourceCollectionEnabled`\" pulumi-lang-python=\"`resource_collection_enabled`\" pulumi-lang-yaml=\"`resourceCollectionEnabled`\" pulumi-lang-java=\"`resourceCollectionEnabled`\"\u003e`resourceCollectionEnabled`\u003c/span\u003e to also be enabled.\n"
                    },
                    "isGlobalLocationEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog collects metrics where location is explicitly stated as 'global' or where location information cannot be deduced from GCP.\n"
                    },
                    "isPerProjectQuotaEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog includes the `X-Goog-User-Project` header to attribute Google Cloud billing and quota usage to the monitored project instead of the default service account project.\n"
                    },
                    "isResourceChangeCollectionEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog scans for all resource change data in your Google Cloud environment.\n"
                    },
                    "isSecurityCommandCenterEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "metricNamespaceConfigs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:gcp/IntegrationStsMetricNamespaceConfig:IntegrationStsMetricNamespaceConfig"
                        },
                        "description": "Configurations for GCP metric namespaces.\n"
                    },
                    "monitoredResourceConfigs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:gcp/IntegrationStsMonitoredResourceConfig:IntegrationStsMonitoredResourceConfig"
                        },
                        "description": "Configurations for GCP monitored resources. Only monitored resources that apply to specified filters are imported into Datadog.\n"
                    },
                    "regionFilterConfigs": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Configurations for GCP location filtering, such as region, multi-region, or zone. Only monitored resources that match the specified regions are imported into Datadog. By default, Datadog collects from all locations.\n"
                    },
                    "resourceCollectionEnabled": {
                        "type": "boolean",
                        "description": "When enabled, Datadog scans for all resources in your GCP environment.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/actionConnection:ActionConnection": {
            "description": "A connection that can be used in Actions, including in the Workflow Automation and App Builder products. This resource requires a registered application key.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst awsConnection = new datadog.ActionConnection(\"aws_connection\", {\n    name: \"My AWS Connection\",\n    aws: [{\n        assumeRole: [{\n            accountId: \"123456789012\",\n            role: \"role2\",\n        }],\n    }],\n});\nconst config = new pulumi.Config();\nconst token1 = config.require(\"token1\");\nconst token2 = config.require(\"token2\");\nconst httpConnection = new datadog.ActionConnection(\"http_connection\", {\n    name: \"My HTTP connection with token auth\",\n    http: [{\n        baseUrl: \"https://catfact.ninja\",\n        tokenAuth: [{\n            tokens: [\n                {\n                    type: \"SECRET\",\n                    name: \"token1\",\n                    value: token1,\n                },\n                {\n                    type: \"SECRET\",\n                    name: \"token2\",\n                    value: token2,\n                },\n            ],\n            headers: [\n                {\n                    name: \"header-one\",\n                    value: \"headerval\",\n                },\n                {\n                    name: \"h2\",\n                    value: \"{{ token1 }} test\",\n                },\n            ],\n            urlParameters: [\n                {\n                    name: \"param1\",\n                    value: \"{{ token1 }}\",\n                },\n                {\n                    name: \"param2\",\n                    value: \"paramVal2\",\n                },\n            ],\n            body: [{\n                contentType: \"application/json\",\n                content: JSON.stringify({\n                    key: \"mykey\",\n                    value: \"maybe with a secret: {{ token2 }}\",\n                }),\n            }],\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_datadog as datadog\n\naws_connection = datadog.ActionConnection(\"aws_connection\",\n    name=\"My AWS Connection\",\n    aws=[{\n        \"assumeRole\": [{\n            \"accountId\": \"123456789012\",\n            \"role\": \"role2\",\n        }],\n    }])\nconfig = pulumi.Config()\ntoken1 = config.require(\"token1\")\ntoken2 = config.require(\"token2\")\nhttp_connection = datadog.ActionConnection(\"http_connection\",\n    name=\"My HTTP connection with token auth\",\n    http=[{\n        \"baseUrl\": \"https://catfact.ninja\",\n        \"tokenAuth\": [{\n            \"tokens\": [\n                {\n                    \"type\": \"SECRET\",\n                    \"name\": \"token1\",\n                    \"value\": token1,\n                },\n                {\n                    \"type\": \"SECRET\",\n                    \"name\": \"token2\",\n                    \"value\": token2,\n                },\n            ],\n            \"headers\": [\n                {\n                    \"name\": \"header-one\",\n                    \"value\": \"headerval\",\n                },\n                {\n                    \"name\": \"h2\",\n                    \"value\": \"{{ token1 }} test\",\n                },\n            ],\n            \"urlParameters\": [\n                {\n                    \"name\": \"param1\",\n                    \"value\": \"{{ token1 }}\",\n                },\n                {\n                    \"name\": \"param2\",\n                    \"value\": \"paramVal2\",\n                },\n            ],\n            \"body\": [{\n                \"contentType\": \"application/json\",\n                \"content\": json.dumps({\n                    \"key\": \"mykey\",\n                    \"value\": \"maybe with a secret: {{ token2 }}\",\n                }),\n            }],\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var awsConnection = new Datadog.ActionConnection(\"aws_connection\", new()\n    {\n        Name = \"My AWS Connection\",\n        Aws = new[]\n        {\n            \n            {\n                { \"assumeRole\", new[]\n                {\n                    \n                    {\n                        { \"accountId\", \"123456789012\" },\n                        { \"role\", \"role2\" },\n                    },\n                } },\n            },\n        },\n    });\n\n    var config = new Config();\n    var token1 = config.Require(\"token1\");\n    var token2 = config.Require(\"token2\");\n    var httpConnection = new Datadog.ActionConnection(\"http_connection\", new()\n    {\n        Name = \"My HTTP connection with token auth\",\n        Http = new[]\n        {\n            \n            {\n                { \"baseUrl\", \"https://catfact.ninja\" },\n                { \"tokenAuth\", new[]\n                {\n                    \n                    {\n                        { \"tokens\", new[]\n                        {\n                            \n                            {\n                                { \"type\", \"SECRET\" },\n                                { \"name\", \"token1\" },\n                                { \"value\", token1 },\n                            },\n                            \n                            {\n                                { \"type\", \"SECRET\" },\n                                { \"name\", \"token2\" },\n                                { \"value\", token2 },\n                            },\n                        } },\n                        { \"headers\", new[]\n                        {\n                            \n                            {\n                                { \"name\", \"header-one\" },\n                                { \"value\", \"headerval\" },\n                            },\n                            \n                            {\n                                { \"name\", \"h2\" },\n                                { \"value\", \"{{ token1 }} test\" },\n                            },\n                        } },\n                        { \"urlParameters\", new[]\n                        {\n                            \n                            {\n                                { \"name\", \"param1\" },\n                                { \"value\", \"{{ token1 }}\" },\n                            },\n                            \n                            {\n                                { \"name\", \"param2\" },\n                                { \"value\", \"paramVal2\" },\n                            },\n                        } },\n                        { \"body\", new[]\n                        {\n                            \n                            {\n                                { \"contentType\", \"application/json\" },\n                                { \"content\", JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n                                {\n                                    [\"key\"] = \"mykey\",\n                                    [\"value\"] = \"maybe with a secret: {{ token2 }}\",\n                                }) },\n                            },\n                        } },\n                    },\n                } },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewActionConnection(ctx, \"aws_connection\", \u0026datadog.ActionConnectionArgs{\n\t\t\tName: pulumi.String(\"My AWS Connection\"),\n\t\t\tAws: datadog.ActionConnectionAwsArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"assumeRole\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"accountId\": \"123456789012\",\n\t\t\t\t\t\t\t\"role\":      \"role2\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcfg := config.New(ctx, \"\")\n\t\ttoken1 := cfg.Require(\"token1\")\n\t\ttoken2 := cfg.Require(\"token2\")\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"key\":   \"mykey\",\n\t\t\t\"value\": \"maybe with a secret: {{ token2 }}\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = datadog.NewActionConnection(ctx, \"http_connection\", \u0026datadog.ActionConnectionArgs{\n\t\t\tName: pulumi.String(\"My HTTP connection with token auth\"),\n\t\t\tHttp: datadog.ActionConnectionHttpArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"baseUrl\": \"https://catfact.ninja\",\n\t\t\t\t\t\"tokenAuth\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"tokens\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"type\":  \"SECRET\",\n\t\t\t\t\t\t\t\t\t\"name\":  \"token1\",\n\t\t\t\t\t\t\t\t\t\"value\": token1,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"type\":  \"SECRET\",\n\t\t\t\t\t\t\t\t\t\"name\":  \"token2\",\n\t\t\t\t\t\t\t\t\t\"value\": token2,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"headers\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"name\":  \"header-one\",\n\t\t\t\t\t\t\t\t\t\"value\": \"headerval\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"name\":  \"h2\",\n\t\t\t\t\t\t\t\t\t\"value\": \"{{ token1 }} test\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"urlParameters\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"name\":  \"param1\",\n\t\t\t\t\t\t\t\t\t\"value\": \"{{ token1 }}\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"name\":  \"param2\",\n\t\t\t\t\t\t\t\t\t\"value\": \"paramVal2\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"body\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"contentType\": \"application/json\",\n\t\t\t\t\t\t\t\t\t\"content\":     json0,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ActionConnection;\nimport com.pulumi.datadog.ActionConnectionArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var config = ctx.config();\n        var awsConnection = new ActionConnection(\"awsConnection\", ActionConnectionArgs.builder()\n            .name(\"My AWS Connection\")\n            .aws(ActionConnectionAwsArgs.builder()\n                .assumeRole(ActionConnectionAwsAssumeRoleArgs.builder()\n                    .accountId(\"123456789012\")\n                    .role(\"role2\")\n                    .build())\n                .build())\n            .build());\n\n        final var token1 = config.require(\"token1\");\n        final var token2 = config.require(\"token2\");\n        var httpConnection = new ActionConnection(\"httpConnection\", ActionConnectionArgs.builder()\n            .name(\"My HTTP connection with token auth\")\n            .http(ActionConnectionHttpArgs.builder()\n                .baseUrl(\"https://catfact.ninja\")\n                .tokenAuth(ActionConnectionHttpTokenAuthArgs.builder()\n                    .tokens(                    \n                        ActionConnectionHttpTokenAuthTokenArgs.builder()\n                            .type(\"SECRET\")\n                            .name(\"token1\")\n                            .value(token1)\n                            .build(),\n                        ActionConnectionHttpTokenAuthTokenArgs.builder()\n                            .type(\"SECRET\")\n                            .name(\"token2\")\n                            .value(token2)\n                            .build())\n                    .headers(                    \n                        ActionConnectionHttpTokenAuthHeaderArgs.builder()\n                            .name(\"header-one\")\n                            .value(\"headerval\")\n                            .build(),\n                        ActionConnectionHttpTokenAuthHeaderArgs.builder()\n                            .name(\"h2\")\n                            .value(\"{{ token1 }} test\")\n                            .build())\n                    .urlParameters(                    \n                        ActionConnectionHttpTokenAuthUrlParameterArgs.builder()\n                            .name(\"param1\")\n                            .value(\"{{ token1 }}\")\n                            .build(),\n                        ActionConnectionHttpTokenAuthUrlParameterArgs.builder()\n                            .name(\"param2\")\n                            .value(\"paramVal2\")\n                            .build())\n                    .body(ActionConnectionHttpTokenAuthBodyArgs.builder()\n                        .contentType(\"application/json\")\n                        .content(serializeJson(\n                            jsonObject(\n                                jsonProperty(\"key\", \"mykey\"),\n                                jsonProperty(\"value\", \"maybe with a secret: {{ token2 }}\")\n                            )))\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nconfiguration:\n  token1:\n    type: string\n  token2:\n    type: string\nresources:\n  awsConnection:\n    type: datadog:ActionConnection\n    name: aws_connection\n    properties:\n      name: My AWS Connection\n      aws:\n        - assumeRole:\n            - accountId: '123456789012'\n              role: role2\n  httpConnection:\n    type: datadog:ActionConnection\n    name: http_connection\n    properties:\n      name: My HTTP connection with token auth\n      http:\n        - baseUrl: https://catfact.ninja\n          tokenAuth:\n            - tokens:\n                - type: SECRET\n                  name: token1\n                  value: ${token1}\n                - type: SECRET\n                  name: token2\n                  value: ${token2}\n              headers:\n                - name: header-one\n                  value: headerval\n                - name: h2\n                  value: '{{ token1 }} test'\n              urlParameters:\n                - name: param1\n                  value: '{{ token1 }}'\n                - name: param2\n                  value: paramVal2\n              body:\n                - contentType: application/json\n                  content:\n                    fn::toJSON:\n                      key: mykey\n                      value: 'maybe with a secret: {{ token2 }}'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/actionConnection:ActionConnection my_connection 11111111-2222-3333-4444-555555555555\n```\n\n",
            "properties": {
                "aws": {
                    "$ref": "#/types/datadog:index/ActionConnectionAws:ActionConnectionAws",
                    "description": "Configuration for an AWS connection\n"
                },
                "http": {
                    "$ref": "#/types/datadog:index/ActionConnectionHttp:ActionConnectionHttp",
                    "description": "Configuration for an HTTP connection\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the connection\n"
                }
            },
            "required": [
                "name"
            ],
            "inputProperties": {
                "aws": {
                    "$ref": "#/types/datadog:index/ActionConnectionAws:ActionConnectionAws",
                    "description": "Configuration for an AWS connection\n"
                },
                "http": {
                    "$ref": "#/types/datadog:index/ActionConnectionHttp:ActionConnectionHttp",
                    "description": "Configuration for an HTTP connection\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the connection\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ActionConnection resources.\n",
                "properties": {
                    "aws": {
                        "$ref": "#/types/datadog:index/ActionConnectionAws:ActionConnectionAws",
                        "description": "Configuration for an AWS connection\n"
                    },
                    "http": {
                        "$ref": "#/types/datadog:index/ActionConnectionHttp:ActionConnectionHttp",
                        "description": "Configuration for an HTTP connection\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the connection\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/agentlessScanningAwsScanOptions:AgentlessScanningAwsScanOptions": {
            "description": "Provides a Datadog Agentless Scanning AWS scan options resource. This can be used to activate and configure Agentless scan options for an AWS account.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Configure agentless scanning for an AWS account\nconst example = new datadog.AgentlessScanningAwsScanOptions(\"example\", {\n    awsAccountId: \"123456789012\",\n    lambda: true,\n    sensitiveData: false,\n    vulnContainersOs: true,\n    vulnHostOs: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Configure agentless scanning for an AWS account\nexample = datadog.AgentlessScanningAwsScanOptions(\"example\",\n    aws_account_id=\"123456789012\",\n    lambda_=True,\n    sensitive_data=False,\n    vuln_containers_os=True,\n    vuln_host_os=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Configure agentless scanning for an AWS account\n    var example = new Datadog.AgentlessScanningAwsScanOptions(\"example\", new()\n    {\n        AwsAccountId = \"123456789012\",\n        Lambda = true,\n        SensitiveData = false,\n        VulnContainersOs = true,\n        VulnHostOs = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Configure agentless scanning for an AWS account\n\t\t_, err := datadog.NewAgentlessScanningAwsScanOptions(ctx, \"example\", \u0026datadog.AgentlessScanningAwsScanOptionsArgs{\n\t\t\tAwsAccountId:     pulumi.String(\"123456789012\"),\n\t\t\tLambda:           pulumi.Bool(true),\n\t\t\tSensitiveData:    pulumi.Bool(false),\n\t\t\tVulnContainersOs: pulumi.Bool(true),\n\t\t\tVulnHostOs:       pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.AgentlessScanningAwsScanOptions;\nimport com.pulumi.datadog.AgentlessScanningAwsScanOptionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Configure agentless scanning for an AWS account\n        var example = new AgentlessScanningAwsScanOptions(\"example\", AgentlessScanningAwsScanOptionsArgs.builder()\n            .awsAccountId(\"123456789012\")\n            .lambda(true)\n            .sensitiveData(false)\n            .vulnContainersOs(true)\n            .vulnHostOs(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Configure agentless scanning for an AWS account\n  example:\n    type: datadog:AgentlessScanningAwsScanOptions\n    properties:\n      awsAccountId: '123456789012'\n      lambda: true\n      sensitiveData: false\n      vulnContainersOs: true\n      vulnHostOs: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n!/bin/sh\n\nImport existing agentless scanning AWS scan options by AWS account ID\n\n```sh\n$ pulumi import datadog:index/agentlessScanningAwsScanOptions:AgentlessScanningAwsScanOptions example 123456789012\n```\n\n",
            "properties": {
                "awsAccountId": {
                    "type": "string",
                    "description": "The AWS account ID for which agentless scanning is configured. Must be a valid AWS account ID.\n"
                },
                "lambda": {
                    "type": "boolean",
                    "description": "Indicates if scanning of Lambda functions is enabled.\n"
                },
                "sensitiveData": {
                    "type": "boolean",
                    "description": "Indicates if scanning for sensitive data is enabled.\n"
                },
                "vulnContainersOs": {
                    "type": "boolean",
                    "description": "Indicates if scanning for vulnerabilities in containers is enabled.\n"
                },
                "vulnHostOs": {
                    "type": "boolean",
                    "description": "Indicates if scanning for vulnerabilities in hosts is enabled.\n"
                }
            },
            "required": [
                "awsAccountId",
                "lambda",
                "sensitiveData",
                "vulnContainersOs",
                "vulnHostOs"
            ],
            "inputProperties": {
                "awsAccountId": {
                    "type": "string",
                    "description": "The AWS account ID for which agentless scanning is configured. Must be a valid AWS account ID.\n"
                },
                "lambda": {
                    "type": "boolean",
                    "description": "Indicates if scanning of Lambda functions is enabled.\n"
                },
                "sensitiveData": {
                    "type": "boolean",
                    "description": "Indicates if scanning for sensitive data is enabled.\n"
                },
                "vulnContainersOs": {
                    "type": "boolean",
                    "description": "Indicates if scanning for vulnerabilities in containers is enabled.\n"
                },
                "vulnHostOs": {
                    "type": "boolean",
                    "description": "Indicates if scanning for vulnerabilities in hosts is enabled.\n"
                }
            },
            "requiredInputs": [
                "awsAccountId",
                "lambda",
                "sensitiveData",
                "vulnContainersOs",
                "vulnHostOs"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AgentlessScanningAwsScanOptions resources.\n",
                "properties": {
                    "awsAccountId": {
                        "type": "string",
                        "description": "The AWS account ID for which agentless scanning is configured. Must be a valid AWS account ID.\n"
                    },
                    "lambda": {
                        "type": "boolean",
                        "description": "Indicates if scanning of Lambda functions is enabled.\n"
                    },
                    "sensitiveData": {
                        "type": "boolean",
                        "description": "Indicates if scanning for sensitive data is enabled.\n"
                    },
                    "vulnContainersOs": {
                        "type": "boolean",
                        "description": "Indicates if scanning for vulnerabilities in containers is enabled.\n"
                    },
                    "vulnHostOs": {
                        "type": "boolean",
                        "description": "Indicates if scanning for vulnerabilities in hosts is enabled.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/agentlessScanningGcpScanOptions:AgentlessScanningGcpScanOptions": {
            "description": "Provides a Datadog Agentless Scanning GCP scan options resource. This can be used to activate and configure Agentless scan options for a GCP project.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Configure agentless scanning for a GCP project\nconst example = new datadog.AgentlessScanningGcpScanOptions(\"example\", {\n    gcpProjectId: \"company-project-prod\",\n    vulnContainersOs: true,\n    vulnHostOs: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Configure agentless scanning for a GCP project\nexample = datadog.AgentlessScanningGcpScanOptions(\"example\",\n    gcp_project_id=\"company-project-prod\",\n    vuln_containers_os=True,\n    vuln_host_os=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Configure agentless scanning for a GCP project\n    var example = new Datadog.AgentlessScanningGcpScanOptions(\"example\", new()\n    {\n        GcpProjectId = \"company-project-prod\",\n        VulnContainersOs = true,\n        VulnHostOs = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Configure agentless scanning for a GCP project\n\t\t_, err := datadog.NewAgentlessScanningGcpScanOptions(ctx, \"example\", \u0026datadog.AgentlessScanningGcpScanOptionsArgs{\n\t\t\tGcpProjectId:     pulumi.String(\"company-project-prod\"),\n\t\t\tVulnContainersOs: pulumi.Bool(true),\n\t\t\tVulnHostOs:       pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.AgentlessScanningGcpScanOptions;\nimport com.pulumi.datadog.AgentlessScanningGcpScanOptionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Configure agentless scanning for a GCP project\n        var example = new AgentlessScanningGcpScanOptions(\"example\", AgentlessScanningGcpScanOptionsArgs.builder()\n            .gcpProjectId(\"company-project-prod\")\n            .vulnContainersOs(true)\n            .vulnHostOs(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Configure agentless scanning for a GCP project\n  example:\n    type: datadog:AgentlessScanningGcpScanOptions\n    properties:\n      gcpProjectId: company-project-prod\n      vulnContainersOs: true\n      vulnHostOs: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n!/bin/sh\n\nImport existing agentless scanning GCP scan options by GCP project ID\n\n```sh\n$ pulumi import datadog:index/agentlessScanningGcpScanOptions:AgentlessScanningGcpScanOptions example company-project-prod\n```\n\n",
            "properties": {
                "gcpProjectId": {
                    "type": "string",
                    "description": "The GCP project ID for which agentless scanning is configured. Must be a valid GCP project ID: 6–30 characters, start with a lowercase letter, and include only lowercase letters, digits, or hyphens.\n"
                },
                "vulnContainersOs": {
                    "type": "boolean",
                    "description": "Indicates if scanning for vulnerabilities in containers is enabled.\n"
                },
                "vulnHostOs": {
                    "type": "boolean",
                    "description": "Indicates if scanning for vulnerabilities in hosts is enabled.\n"
                }
            },
            "required": [
                "gcpProjectId",
                "vulnContainersOs",
                "vulnHostOs"
            ],
            "inputProperties": {
                "gcpProjectId": {
                    "type": "string",
                    "description": "The GCP project ID for which agentless scanning is configured. Must be a valid GCP project ID: 6–30 characters, start with a lowercase letter, and include only lowercase letters, digits, or hyphens.\n"
                },
                "vulnContainersOs": {
                    "type": "boolean",
                    "description": "Indicates if scanning for vulnerabilities in containers is enabled.\n"
                },
                "vulnHostOs": {
                    "type": "boolean",
                    "description": "Indicates if scanning for vulnerabilities in hosts is enabled.\n"
                }
            },
            "requiredInputs": [
                "gcpProjectId",
                "vulnContainersOs",
                "vulnHostOs"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AgentlessScanningGcpScanOptions resources.\n",
                "properties": {
                    "gcpProjectId": {
                        "type": "string",
                        "description": "The GCP project ID for which agentless scanning is configured. Must be a valid GCP project ID: 6–30 characters, start with a lowercase letter, and include only lowercase letters, digits, or hyphens.\n"
                    },
                    "vulnContainersOs": {
                        "type": "boolean",
                        "description": "Indicates if scanning for vulnerabilities in containers is enabled.\n"
                    },
                    "vulnHostOs": {
                        "type": "boolean",
                        "description": "Indicates if scanning for vulnerabilities in hosts is enabled.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/apiKey:ApiKey": {
            "description": "Provides a Datadog API Key resource. This can be used to create and manage Datadog API Keys. Import functionality for this resource is deprecated and will be removed in a future release with prior notice. Securely store your API keys using a secret management system or use this resource to create and manage new API keys.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create a new Datadog API Key\nconst foo = new datadog.ApiKey(\"foo\", {name: \"foo-application\"});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create a new Datadog API Key\nfoo = datadog.ApiKey(\"foo\", name=\"foo-application\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a new Datadog API Key\n    var foo = new Datadog.ApiKey(\"foo\", new()\n    {\n        Name = \"foo-application\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new Datadog API Key\n\t\t_, err := datadog.NewApiKey(ctx, \"foo\", \u0026datadog.ApiKeyArgs{\n\t\t\tName: pulumi.String(\"foo-application\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ApiKey;\nimport com.pulumi.datadog.ApiKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create a new Datadog API Key\n        var foo = new ApiKey(\"foo\", ApiKeyArgs.builder()\n            .name(\"foo-application\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a new Datadog API Key\n  foo:\n    type: datadog:ApiKey\n    properties:\n      name: foo-application\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/apiKey:ApiKey foo 11111111-2222-3333-4444-555555555555\n```\n\n",
            "properties": {
                "key": {
                    "type": "string",
                    "description": "The value of the API Key.\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "Name for API Key.\n"
                },
                "remoteConfigReadEnabled": {
                    "type": "boolean",
                    "description": "Whether the API key is used for remote config. Set to true only if remote config is enabled in `/organization-settings/remote-config`.\n"
                }
            },
            "required": [
                "key",
                "name",
                "remoteConfigReadEnabled"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "Name for API Key.\n"
                },
                "remoteConfigReadEnabled": {
                    "type": "boolean",
                    "description": "Whether the API key is used for remote config. Set to true only if remote config is enabled in `/organization-settings/remote-config`.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApiKey resources.\n",
                "properties": {
                    "key": {
                        "type": "string",
                        "description": "The value of the API Key.\n",
                        "secret": true
                    },
                    "name": {
                        "type": "string",
                        "description": "Name for API Key.\n"
                    },
                    "remoteConfigReadEnabled": {
                        "type": "boolean",
                        "description": "Whether the API key is used for remote config. Set to true only if remote config is enabled in `/organization-settings/remote-config`.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/apmRetentionFilter:ApmRetentionFilter": {
            "description": "The object describing the configuration of the retention filter to create/update.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create APM retention filter\nconst foo = new datadog.ApmRetentionFilter(\"foo\", {\n    name: \"Sample order\",\n    rate: \"1.0\",\n    filter: [{\n        query: \"service:sample AND env:production AND @http.method:GET AND app:sampleapp AND @http.status_code:200 AND @duration:\u003e600000000\",\n    }],\n    filterType: \"spans-sampling-processor\",\n    enabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create APM retention filter\nfoo = datadog.ApmRetentionFilter(\"foo\",\n    name=\"Sample order\",\n    rate=\"1.0\",\n    filter=[{\n        \"query\": \"service:sample AND env:production AND @http.method:GET AND app:sampleapp AND @http.status_code:200 AND @duration:\u003e600000000\",\n    }],\n    filter_type=\"spans-sampling-processor\",\n    enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create APM retention filter\n    var foo = new Datadog.ApmRetentionFilter(\"foo\", new()\n    {\n        Name = \"Sample order\",\n        Rate = \"1.0\",\n        Filter = new[]\n        {\n            \n            {\n                { \"query\", \"service:sample AND env:production AND @http.method:GET AND app:sampleapp AND @http.status_code:200 AND @duration:\u003e600000000\" },\n            },\n        },\n        FilterType = \"spans-sampling-processor\",\n        Enabled = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create APM retention filter\n\t\t_, err := datadog.NewApmRetentionFilter(ctx, \"foo\", \u0026datadog.ApmRetentionFilterArgs{\n\t\t\tName: pulumi.String(\"Sample order\"),\n\t\t\tRate: pulumi.String(\"1.0\"),\n\t\t\tFilter: datadog.ApmRetentionFilterFilterArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"query\": \"service:sample AND env:production AND @http.method:GET AND app:sampleapp AND @http.status_code:200 AND @duration:\u003e600000000\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFilterType: pulumi.String(\"spans-sampling-processor\"),\n\t\t\tEnabled:    pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ApmRetentionFilter;\nimport com.pulumi.datadog.ApmRetentionFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create APM retention filter\n        var foo = new ApmRetentionFilter(\"foo\", ApmRetentionFilterArgs.builder()\n            .name(\"Sample order\")\n            .rate(\"1.0\")\n            .filter(ApmRetentionFilterFilterArgs.builder()\n                .query(\"service:sample AND env:production AND @http.method:GET AND app:sampleapp AND @http.status_code:200 AND @duration:\u003e600000000\")\n                .build())\n            .filterType(\"spans-sampling-processor\")\n            .enabled(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create APM retention filter\n  foo:\n    type: datadog:ApmRetentionFilter\n    properties:\n      name: Sample order\n      rate: '1.0'\n      filter:\n        - query: service:sample AND env:production AND @http.method:GET AND app:sampleapp AND @http.status_code:200 AND @duration:\u003e600000000\n      filterType: spans-sampling-processor\n      enabled: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nImport existing APM retention filter\n\n```sh\n$ pulumi import datadog:index/apmRetentionFilter:ApmRetentionFilter foo \u003cfilter_id\u003e\n```\n\n",
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "the status of the retention filter.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/ApmRetentionFilterFilter:ApmRetentionFilterFilter",
                    "description": "The spans filter. Spans matching this filter will be indexed and stored.\n"
                },
                "filterType": {
                    "type": "string",
                    "description": "The type of the retention filter, currently only spans-processing-sampling is available. Valid values are `spans-sampling-processor`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the retention filter.\n"
                },
                "rate": {
                    "type": "string",
                    "description": "Sample rate to apply to spans going through this retention filter as a string; a value of 1.0 keeps all spans matching the query. Value must be between 0.00 and 1.00.\n"
                },
                "traceRate": {
                    "type": "string",
                    "description": "Sample rate to apply to traces with spans going through this retention filter as a string; a value of 1.0 keeps all traces matching the query. Value must be between 0.00 and 1.00.\n"
                }
            },
            "required": [
                "enabled",
                "filter",
                "filterType",
                "name",
                "rate"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "the status of the retention filter.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/ApmRetentionFilterFilter:ApmRetentionFilterFilter",
                    "description": "The spans filter. Spans matching this filter will be indexed and stored.\n"
                },
                "filterType": {
                    "type": "string",
                    "description": "The type of the retention filter, currently only spans-processing-sampling is available. Valid values are `spans-sampling-processor`.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the retention filter.\n"
                },
                "rate": {
                    "type": "string",
                    "description": "Sample rate to apply to spans going through this retention filter as a string; a value of 1.0 keeps all spans matching the query. Value must be between 0.00 and 1.00.\n"
                },
                "traceRate": {
                    "type": "string",
                    "description": "Sample rate to apply to traces with spans going through this retention filter as a string; a value of 1.0 keeps all traces matching the query. Value must be between 0.00 and 1.00.\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "filter",
                "filterType",
                "name",
                "rate"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApmRetentionFilter resources.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "the status of the retention filter.\n"
                    },
                    "filter": {
                        "$ref": "#/types/datadog:index/ApmRetentionFilterFilter:ApmRetentionFilterFilter",
                        "description": "The spans filter. Spans matching this filter will be indexed and stored.\n"
                    },
                    "filterType": {
                        "type": "string",
                        "description": "The type of the retention filter, currently only spans-processing-sampling is available. Valid values are `spans-sampling-processor`.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the retention filter.\n"
                    },
                    "rate": {
                        "type": "string",
                        "description": "Sample rate to apply to spans going through this retention filter as a string; a value of 1.0 keeps all spans matching the query. Value must be between 0.00 and 1.00.\n"
                    },
                    "traceRate": {
                        "type": "string",
                        "description": "Sample rate to apply to traces with spans going through this retention filter as a string; a value of 1.0 keeps all traces matching the query. Value must be between 0.00 and 1.00.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/apmRetentionFilterOrder:ApmRetentionFilterOrder": {
            "description": "Provides a Datadog [APM Retention Filters API](https://docs.datadoghq.com/api/v2/apm-retention-filters/) resource, which is used to manage Datadog APM retention filters order.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create APM retention filter\nconst foo = new datadog.ApmRetentionFilter(\"foo\", {\n    name: \"Sample order\",\n    rate: \"1.0\",\n    filter: [{\n        query: \"*\",\n    }],\n    filterType: \"spans-sampling-processor\",\n    enabled: false,\n});\n// Create APM retention filter order\nconst bar = new datadog.ApmRetentionFilterOrder(\"bar\", {filterIds: [foo.id]});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create APM retention filter\nfoo = datadog.ApmRetentionFilter(\"foo\",\n    name=\"Sample order\",\n    rate=\"1.0\",\n    filter=[{\n        \"query\": \"*\",\n    }],\n    filter_type=\"spans-sampling-processor\",\n    enabled=False)\n# Create APM retention filter order\nbar = datadog.ApmRetentionFilterOrder(\"bar\", filter_ids=[foo.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create APM retention filter\n    var foo = new Datadog.ApmRetentionFilter(\"foo\", new()\n    {\n        Name = \"Sample order\",\n        Rate = \"1.0\",\n        Filter = new[]\n        {\n            \n            {\n                { \"query\", \"*\" },\n            },\n        },\n        FilterType = \"spans-sampling-processor\",\n        Enabled = false,\n    });\n\n    // Create APM retention filter order\n    var bar = new Datadog.ApmRetentionFilterOrder(\"bar\", new()\n    {\n        FilterIds = new[]\n        {\n            foo.Id,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create APM retention filter\n\t\tfoo, err := datadog.NewApmRetentionFilter(ctx, \"foo\", \u0026datadog.ApmRetentionFilterArgs{\n\t\t\tName: pulumi.String(\"Sample order\"),\n\t\t\tRate: pulumi.String(\"1.0\"),\n\t\t\tFilter: datadog.ApmRetentionFilterFilterArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"query\": \"*\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFilterType: pulumi.String(\"spans-sampling-processor\"),\n\t\t\tEnabled:    pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create APM retention filter order\n\t\t_, err = datadog.NewApmRetentionFilterOrder(ctx, \"bar\", \u0026datadog.ApmRetentionFilterOrderArgs{\n\t\t\tFilterIds: pulumi.StringArray{\n\t\t\t\tfoo.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ApmRetentionFilter;\nimport com.pulumi.datadog.ApmRetentionFilterArgs;\nimport com.pulumi.datadog.ApmRetentionFilterOrder;\nimport com.pulumi.datadog.ApmRetentionFilterOrderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create APM retention filter\n        var foo = new ApmRetentionFilter(\"foo\", ApmRetentionFilterArgs.builder()\n            .name(\"Sample order\")\n            .rate(\"1.0\")\n            .filter(ApmRetentionFilterFilterArgs.builder()\n                .query(\"*\")\n                .build())\n            .filterType(\"spans-sampling-processor\")\n            .enabled(false)\n            .build());\n\n        // Create APM retention filter order\n        var bar = new ApmRetentionFilterOrder(\"bar\", ApmRetentionFilterOrderArgs.builder()\n            .filterIds(foo.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create APM retention filter\n  foo:\n    type: datadog:ApmRetentionFilter\n    properties:\n      name: Sample order\n      rate: '1.0'\n      filter:\n        - query: '*'\n      filterType: spans-sampling-processor\n      enabled: false\n  # Create APM retention filter order\n  bar:\n    type: datadog:ApmRetentionFilterOrder\n    properties:\n      filterIds:\n        - ${foo.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nImport existing APM retention filter order\nNote: Value of \u003cfoo\u003e can be anything as this id is not stored by the resource\n\n```sh\n$ pulumi import datadog:index/apmRetentionFilterOrder:ApmRetentionFilterOrder bar \u003cfoo\u003e\n```\n\n",
            "properties": {
                "filterIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The filter IDs list. The order of filters IDs in this attribute defines the overall APM retention filters order.\n"
                }
            },
            "required": [
                "filterIds"
            ],
            "inputProperties": {
                "filterIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The filter IDs list. The order of filters IDs in this attribute defines the overall APM retention filters order.\n"
                }
            },
            "requiredInputs": [
                "filterIds"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApmRetentionFilterOrder resources.\n",
                "properties": {
                    "filterIds": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The filter IDs list. The order of filters IDs in this attribute defines the overall APM retention filters order.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/appBuilderApp:AppBuilderApp": {
            "description": "Provides a Datadog App resource for creating and managing Datadog Apps from App Builder using the JSON definition. To easily export an App for use with Terraform, use the export button in the Datadog App Builder UI. This resource requires a registered application key.\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/appBuilderApp:AppBuilderApp my_app 11111111-2222-3333-4444-555555555555\n```\n\n",
            "properties": {
                "actionQueryNamesToConnectionIds": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "If specified, this will override the Action Connection IDs for the specified Action Query Names in the App JSON. Otherwise, a map of the App's Action Query Names to Action Connection IDs will be returned in output.\n"
                },
                "appJson": {
                    "type": "string",
                    "description": "The JSON representation of the App. String length must be at least 1.\n"
                },
                "description": {
                    "type": "string",
                    "description": "If specified, this will override the human-readable description of the App in the App JSON. String length must be at least 1.\n"
                },
                "name": {
                    "type": "string",
                    "description": "If specified, this will override the name of the App in the App JSON. String length must be at least 1.\n"
                },
                "published": {
                    "type": "boolean",
                    "description": "Set the app to published or unpublished. Published apps are available to other users. To ensure the app is accessible to the correct users, you also need to set a [Restriction Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) on the app if a policy does not yet exist. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "rootInstanceName": {
                    "type": "string",
                    "description": "The name of the root component of the app. This must be a grid component that contains all other components. If specified, this will override the root instance name of the App in the App JSON. String length must be at least 1.\n"
                }
            },
            "required": [
                "actionQueryNamesToConnectionIds",
                "appJson",
                "description",
                "name",
                "published",
                "rootInstanceName"
            ],
            "inputProperties": {
                "actionQueryNamesToConnectionIds": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "If specified, this will override the Action Connection IDs for the specified Action Query Names in the App JSON. Otherwise, a map of the App's Action Query Names to Action Connection IDs will be returned in output.\n"
                },
                "appJson": {
                    "type": "string",
                    "description": "The JSON representation of the App. String length must be at least 1.\n"
                },
                "description": {
                    "type": "string",
                    "description": "If specified, this will override the human-readable description of the App in the App JSON. String length must be at least 1.\n"
                },
                "name": {
                    "type": "string",
                    "description": "If specified, this will override the name of the App in the App JSON. String length must be at least 1.\n"
                },
                "published": {
                    "type": "boolean",
                    "description": "Set the app to published or unpublished. Published apps are available to other users. To ensure the app is accessible to the correct users, you also need to set a [Restriction Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) on the app if a policy does not yet exist. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "rootInstanceName": {
                    "type": "string",
                    "description": "The name of the root component of the app. This must be a grid component that contains all other components. If specified, this will override the root instance name of the App in the App JSON. String length must be at least 1.\n"
                }
            },
            "requiredInputs": [
                "appJson"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AppBuilderApp resources.\n",
                "properties": {
                    "actionQueryNamesToConnectionIds": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        },
                        "description": "If specified, this will override the Action Connection IDs for the specified Action Query Names in the App JSON. Otherwise, a map of the App's Action Query Names to Action Connection IDs will be returned in output.\n"
                    },
                    "appJson": {
                        "type": "string",
                        "description": "The JSON representation of the App. String length must be at least 1.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "If specified, this will override the human-readable description of the App in the App JSON. String length must be at least 1.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "If specified, this will override the name of the App in the App JSON. String length must be at least 1.\n"
                    },
                    "published": {
                        "type": "boolean",
                        "description": "Set the app to published or unpublished. Published apps are available to other users. To ensure the app is accessible to the correct users, you also need to set a [Restriction Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) on the app if a policy does not yet exist. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "rootInstanceName": {
                        "type": "string",
                        "description": "The name of the root component of the app. This must be a grid component that contains all other components. If specified, this will override the root instance name of the App in the App JSON. String length must be at least 1.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/appKeyRegistration:AppKeyRegistration": {
            "description": "Registers App Keys to be used for Action Connection, App Builder, and Workflow Automation. This registration is required to enable API and Terraform use in these products.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst appKeyRegistration = new datadog.AppKeyRegistration(\"app_key_registration\", {appKeyId: \"11111111-2222-3333-4444-555555555555\"});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\napp_key_registration = datadog.AppKeyRegistration(\"app_key_registration\", app_key_id=\"11111111-2222-3333-4444-555555555555\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var appKeyRegistration = new Datadog.AppKeyRegistration(\"app_key_registration\", new()\n    {\n        AppKeyId = \"11111111-2222-3333-4444-555555555555\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewAppKeyRegistration(ctx, \"app_key_registration\", \u0026datadog.AppKeyRegistrationArgs{\n\t\t\tAppKeyId: pulumi.String(\"11111111-2222-3333-4444-555555555555\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.AppKeyRegistration;\nimport com.pulumi.datadog.AppKeyRegistrationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var appKeyRegistration = new AppKeyRegistration(\"appKeyRegistration\", AppKeyRegistrationArgs.builder()\n            .appKeyId(\"11111111-2222-3333-4444-555555555555\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  appKeyRegistration:\n    type: datadog:AppKeyRegistration\n    name: app_key_registration\n    properties:\n      appKeyId: 11111111-2222-3333-4444-555555555555\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/appKeyRegistration:AppKeyRegistration my_app_key_registration 11111111-2222-3333-4444-555555555555\n```\n\n",
            "properties": {
                "appKeyId": {
                    "type": "string",
                    "description": "The Application Key ID to register.\n"
                }
            },
            "required": [
                "appKeyId"
            ],
            "inputProperties": {
                "appKeyId": {
                    "type": "string",
                    "description": "The Application Key ID to register.\n"
                }
            },
            "requiredInputs": [
                "appKeyId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AppKeyRegistration resources.\n",
                "properties": {
                    "appKeyId": {
                        "type": "string",
                        "description": "The Application Key ID to register.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/applicationKey:ApplicationKey": {
            "description": "Provides a Datadog Application Key resource. This can be used to create and manage Datadog Application Keys. Import is not supported for this resource. Securely store your application keys using a secret management system or use this resource to create and manage new application keys.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// See the permissions available for scoped keys at https://docs.datadoghq.com/account_management/rbac/permissions/#permissions-list\n// Create an unrestricted Application Key\n// This key inherits all permissions of the user that owns the key\nconst unrestrictedKey = new datadog.ApplicationKey(\"unrestricted_key\", {name: \"Unrestricted Application Key\"});\n// Create a scoped Application Key for monitor management\nconst monitorManagementKey = new datadog.ApplicationKey(\"monitor_management_key\", {\n    name: \"Monitor Management Key\",\n    scopes: [\n        \"monitors_read\",\n        \"monitors_write\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# See the permissions available for scoped keys at https://docs.datadoghq.com/account_management/rbac/permissions/#permissions-list\n# Create an unrestricted Application Key\n# This key inherits all permissions of the user that owns the key\nunrestricted_key = datadog.ApplicationKey(\"unrestricted_key\", name=\"Unrestricted Application Key\")\n# Create a scoped Application Key for monitor management\nmonitor_management_key = datadog.ApplicationKey(\"monitor_management_key\",\n    name=\"Monitor Management Key\",\n    scopes=[\n        \"monitors_read\",\n        \"monitors_write\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // See the permissions available for scoped keys at https://docs.datadoghq.com/account_management/rbac/permissions/#permissions-list\n    // Create an unrestricted Application Key\n    // This key inherits all permissions of the user that owns the key\n    var unrestrictedKey = new Datadog.ApplicationKey(\"unrestricted_key\", new()\n    {\n        Name = \"Unrestricted Application Key\",\n    });\n\n    // Create a scoped Application Key for monitor management\n    var monitorManagementKey = new Datadog.ApplicationKey(\"monitor_management_key\", new()\n    {\n        Name = \"Monitor Management Key\",\n        Scopes = new[]\n        {\n            \"monitors_read\",\n            \"monitors_write\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// See the permissions available for scoped keys at https://docs.datadoghq.com/account_management/rbac/permissions/#permissions-list\n\t\t// Create an unrestricted Application Key\n\t\t// This key inherits all permissions of the user that owns the key\n\t\t_, err := datadog.NewApplicationKey(ctx, \"unrestricted_key\", \u0026datadog.ApplicationKeyArgs{\n\t\t\tName: pulumi.String(\"Unrestricted Application Key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a scoped Application Key for monitor management\n\t\t_, err = datadog.NewApplicationKey(ctx, \"monitor_management_key\", \u0026datadog.ApplicationKeyArgs{\n\t\t\tName: pulumi.String(\"Monitor Management Key\"),\n\t\t\tScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"monitors_read\"),\n\t\t\t\tpulumi.String(\"monitors_write\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ApplicationKey;\nimport com.pulumi.datadog.ApplicationKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // See the permissions available for scoped keys at https://docs.datadoghq.com/account_management/rbac/permissions/#permissions-list\n        // Create an unrestricted Application Key\n        // This key inherits all permissions of the user that owns the key\n        var unrestrictedKey = new ApplicationKey(\"unrestrictedKey\", ApplicationKeyArgs.builder()\n            .name(\"Unrestricted Application Key\")\n            .build());\n\n        // Create a scoped Application Key for monitor management\n        var monitorManagementKey = new ApplicationKey(\"monitorManagementKey\", ApplicationKeyArgs.builder()\n            .name(\"Monitor Management Key\")\n            .scopes(            \n                \"monitors_read\",\n                \"monitors_write\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # See the permissions available for scoped keys at https://docs.datadoghq.com/account_management/rbac/permissions/#permissions-list\n\n  # Create an unrestricted Application Key\n  # This key inherits all permissions of the user that owns the key\n  unrestrictedKey:\n    type: datadog:ApplicationKey\n    name: unrestricted_key\n    properties:\n      name: Unrestricted Application Key\n  # Create a scoped Application Key for monitor management\n  monitorManagementKey:\n    type: datadog:ApplicationKey\n    name: monitor_management_key\n    properties:\n      name: Monitor Management Key\n      scopes:\n        - monitors_read\n        - monitors_write\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "properties": {
                "key": {
                    "type": "string",
                    "description": "The value of the Application Key.\n",
                    "secret": true
                },
                "name": {
                    "type": "string",
                    "description": "Name for Application Key.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Authorization scopes for the Application Key. Application Keys configured with no scopes have full access.\n"
                }
            },
            "required": [
                "key",
                "name"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "Name for Application Key.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Authorization scopes for the Application Key. Application Keys configured with no scopes have full access.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ApplicationKey resources.\n",
                "properties": {
                    "key": {
                        "type": "string",
                        "description": "The value of the Application Key.\n",
                        "secret": true
                    },
                    "name": {
                        "type": "string",
                        "description": "Name for Application Key.\n"
                    },
                    "scopes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Authorization scopes for the Application Key. Application Keys configured with no scopes have full access.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/appsecWafCustomRule:AppsecWafCustomRule": {
            "description": "Provides a Datadog AppsecWafCustomRule resource. This can be used to create and manage Datadog appsec_waf_custom_rule.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create a new WAF custom rule to block a custom IoC\nconst ioc000 = new datadog.AppsecWafCustomRule(\"ioc000\", {\n    name: \"Block requests from a bad actor\",\n    blocking: true,\n    enabled: true,\n    tags: {\n        category: \"attack_attempt\",\n        type: \"custom_ioc\",\n    },\n    pathGlob: \"/db/*\",\n    conditions: [{\n        operator: \"match_regex\",\n        parameters: [{\n            inputs: [{\n                address: \"server.db.statement\",\n            }],\n            regex: \"stmt.*\",\n        }],\n    }],\n    action: [{\n        action: \"redirect_request\",\n        parameters: [{\n            statusCode: 302,\n            location: \"/blocking\",\n        }],\n    }],\n});\n// Create a WAF custom rule to track business logic events\nconst biz000 = new datadog.AppsecWafCustomRule(\"biz000\", {\n    name: \"Track payments\",\n    blocking: false,\n    enabled: true,\n    tags: {\n        category: \"business_logic\",\n        type: \"payment.checkout\",\n    },\n    pathGlob: \"/cart/*\",\n    conditions: [{\n        operator: \"capture_data\",\n        parameters: [{\n            inputs: [{\n                address: \"server.request.query\",\n                keyPaths: [\"payment_id\"],\n            }],\n            value: \"payment\",\n        }],\n    }],\n    scopes: [{\n        env: \"prod\",\n        service: \"paymentsvc\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create a new WAF custom rule to block a custom IoC\nioc000 = datadog.AppsecWafCustomRule(\"ioc000\",\n    name=\"Block requests from a bad actor\",\n    blocking=True,\n    enabled=True,\n    tags={\n        \"category\": \"attack_attempt\",\n        \"type\": \"custom_ioc\",\n    },\n    path_glob=\"/db/*\",\n    conditions=[{\n        \"operator\": \"match_regex\",\n        \"parameters\": [{\n            \"inputs\": [{\n                \"address\": \"server.db.statement\",\n            }],\n            \"regex\": \"stmt.*\",\n        }],\n    }],\n    action=[{\n        \"action\": \"redirect_request\",\n        \"parameters\": [{\n            \"statusCode\": 302,\n            \"location\": \"/blocking\",\n        }],\n    }])\n# Create a WAF custom rule to track business logic events\nbiz000 = datadog.AppsecWafCustomRule(\"biz000\",\n    name=\"Track payments\",\n    blocking=False,\n    enabled=True,\n    tags={\n        \"category\": \"business_logic\",\n        \"type\": \"payment.checkout\",\n    },\n    path_glob=\"/cart/*\",\n    conditions=[{\n        \"operator\": \"capture_data\",\n        \"parameters\": [{\n            \"inputs\": [{\n                \"address\": \"server.request.query\",\n                \"keyPaths\": [\"payment_id\"],\n            }],\n            \"value\": \"payment\",\n        }],\n    }],\n    scopes=[{\n        \"env\": \"prod\",\n        \"service\": \"paymentsvc\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a new WAF custom rule to block a custom IoC\n    var ioc000 = new Datadog.AppsecWafCustomRule(\"ioc000\", new()\n    {\n        Name = \"Block requests from a bad actor\",\n        Blocking = true,\n        Enabled = true,\n        Tags = \n        {\n            { \"category\", \"attack_attempt\" },\n            { \"type\", \"custom_ioc\" },\n        },\n        PathGlob = \"/db/*\",\n        Conditions = new[]\n        {\n            new Datadog.Inputs.AppsecWafCustomRuleConditionArgs\n            {\n                Operator = \"match_regex\",\n                Parameters = new[]\n                {\n                    \n                    {\n                        { \"inputs\", new[]\n                        {\n                            \n                            {\n                                { \"address\", \"server.db.statement\" },\n                            },\n                        } },\n                        { \"regex\", \"stmt.*\" },\n                    },\n                },\n            },\n        },\n        Action = new[]\n        {\n            \n            {\n                { \"action\", \"redirect_request\" },\n                { \"parameters\", new[]\n                {\n                    \n                    {\n                        { \"statusCode\", 302 },\n                        { \"location\", \"/blocking\" },\n                    },\n                } },\n            },\n        },\n    });\n\n    // Create a WAF custom rule to track business logic events\n    var biz000 = new Datadog.AppsecWafCustomRule(\"biz000\", new()\n    {\n        Name = \"Track payments\",\n        Blocking = false,\n        Enabled = true,\n        Tags = \n        {\n            { \"category\", \"business_logic\" },\n            { \"type\", \"payment.checkout\" },\n        },\n        PathGlob = \"/cart/*\",\n        Conditions = new[]\n        {\n            new Datadog.Inputs.AppsecWafCustomRuleConditionArgs\n            {\n                Operator = \"capture_data\",\n                Parameters = new[]\n                {\n                    \n                    {\n                        { \"inputs\", new[]\n                        {\n                            \n                            {\n                                { \"address\", \"server.request.query\" },\n                                { \"keyPaths\", new[]\n                                {\n                                    \"payment_id\",\n                                } },\n                            },\n                        } },\n                        { \"value\", \"payment\" },\n                    },\n                },\n            },\n        },\n        Scopes = new[]\n        {\n            new Datadog.Inputs.AppsecWafCustomRuleScopeArgs\n            {\n                Env = \"prod\",\n                Service = \"paymentsvc\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new WAF custom rule to block a custom IoC\n\t\t_, err := datadog.NewAppsecWafCustomRule(ctx, \"ioc000\", \u0026datadog.AppsecWafCustomRuleArgs{\n\t\t\tName:     pulumi.String(\"Block requests from a bad actor\"),\n\t\t\tBlocking: pulumi.Bool(true),\n\t\t\tEnabled:  pulumi.Bool(true),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"category\": pulumi.String(\"attack_attempt\"),\n\t\t\t\t\"type\":     pulumi.String(\"custom_ioc\"),\n\t\t\t},\n\t\t\tPathGlob: pulumi.String(\"/db/*\"),\n\t\t\tConditions: datadog.AppsecWafCustomRuleConditionArray{\n\t\t\t\t\u0026datadog.AppsecWafCustomRuleConditionArgs{\n\t\t\t\t\tOperator: pulumi.String(\"match_regex\"),\n\t\t\t\t\tParameters: datadog.AppsecWafCustomRuleConditionParametersArgs{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"inputs\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"address\": \"server.db.statement\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"regex\": \"stmt.*\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAction: datadog.AppsecWafCustomRuleActionArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"action\": \"redirect_request\",\n\t\t\t\t\t\"parameters\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"statusCode\": 302,\n\t\t\t\t\t\t\t\"location\":   \"/blocking\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a WAF custom rule to track business logic events\n\t\t_, err = datadog.NewAppsecWafCustomRule(ctx, \"biz000\", \u0026datadog.AppsecWafCustomRuleArgs{\n\t\t\tName:     pulumi.String(\"Track payments\"),\n\t\t\tBlocking: pulumi.Bool(false),\n\t\t\tEnabled:  pulumi.Bool(true),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"category\": pulumi.String(\"business_logic\"),\n\t\t\t\t\"type\":     pulumi.String(\"payment.checkout\"),\n\t\t\t},\n\t\t\tPathGlob: pulumi.String(\"/cart/*\"),\n\t\t\tConditions: datadog.AppsecWafCustomRuleConditionArray{\n\t\t\t\t\u0026datadog.AppsecWafCustomRuleConditionArgs{\n\t\t\t\t\tOperator: pulumi.String(\"capture_data\"),\n\t\t\t\t\tParameters: datadog.AppsecWafCustomRuleConditionParametersArgs{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"inputs\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"address\": \"server.request.query\",\n\t\t\t\t\t\t\t\t\t\"keyPaths\": []string{\n\t\t\t\t\t\t\t\t\t\t\"payment_id\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"value\": \"payment\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tScopes: datadog.AppsecWafCustomRuleScopeArray{\n\t\t\t\t\u0026datadog.AppsecWafCustomRuleScopeArgs{\n\t\t\t\t\tEnv:     pulumi.String(\"prod\"),\n\t\t\t\t\tService: pulumi.String(\"paymentsvc\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.AppsecWafCustomRule;\nimport com.pulumi.datadog.AppsecWafCustomRuleArgs;\nimport com.pulumi.datadog.inputs.AppsecWafCustomRuleConditionArgs;\nimport com.pulumi.datadog.inputs.AppsecWafCustomRuleScopeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create a new WAF custom rule to block a custom IoC\n        var ioc000 = new AppsecWafCustomRule(\"ioc000\", AppsecWafCustomRuleArgs.builder()\n            .name(\"Block requests from a bad actor\")\n            .blocking(true)\n            .enabled(true)\n            .tags(Map.ofEntries(\n                Map.entry(\"category\", \"attack_attempt\"),\n                Map.entry(\"type\", \"custom_ioc\")\n            ))\n            .pathGlob(\"/db/*\")\n            .conditions(AppsecWafCustomRuleConditionArgs.builder()\n                .operator(\"match_regex\")\n                .parameters(AppsecWafCustomRuleConditionParametersArgs.builder()\n                    .inputs(AppsecWafCustomRuleConditionParametersInputArgs.builder()\n                        .address(\"server.db.statement\")\n                        .build())\n                    .regex(\"stmt.*\")\n                    .build())\n                .build())\n            .action(AppsecWafCustomRuleActionArgs.builder()\n                .action(\"redirect_request\")\n                .parameters(AppsecWafCustomRuleActionParametersArgs.builder()\n                    .statusCode(302)\n                    .location(\"/blocking\")\n                    .build())\n                .build())\n            .build());\n\n        // Create a WAF custom rule to track business logic events\n        var biz000 = new AppsecWafCustomRule(\"biz000\", AppsecWafCustomRuleArgs.builder()\n            .name(\"Track payments\")\n            .blocking(false)\n            .enabled(true)\n            .tags(Map.ofEntries(\n                Map.entry(\"category\", \"business_logic\"),\n                Map.entry(\"type\", \"payment.checkout\")\n            ))\n            .pathGlob(\"/cart/*\")\n            .conditions(AppsecWafCustomRuleConditionArgs.builder()\n                .operator(\"capture_data\")\n                .parameters(AppsecWafCustomRuleConditionParametersArgs.builder()\n                    .inputs(AppsecWafCustomRuleConditionParametersInputArgs.builder()\n                        .address(\"server.request.query\")\n                        .keyPaths(\"payment_id\")\n                        .build())\n                    .value(\"payment\")\n                    .build())\n                .build())\n            .scopes(AppsecWafCustomRuleScopeArgs.builder()\n                .env(\"prod\")\n                .service(\"paymentsvc\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a new WAF custom rule to block a custom IoC\n  ioc000:\n    type: datadog:AppsecWafCustomRule\n    properties:\n      name: Block requests from a bad actor\n      blocking: true\n      enabled: true\n      tags:\n        category: attack_attempt\n        type: custom_ioc\n      pathGlob: /db/*\n      conditions:\n        - operator: match_regex\n          parameters:\n            - inputs:\n                - address: server.db.statement\n              regex: stmt.*\n      action:\n        - action: redirect_request\n          parameters:\n            - statusCode: 302\n              location: /blocking\n  # Create a WAF custom rule to track business logic events\n  biz000:\n    type: datadog:AppsecWafCustomRule\n    properties:\n      name: Track payments\n      blocking: false\n      enabled: true\n      tags:\n        category: business_logic\n        type: payment.checkout\n      pathGlob: /cart/*\n      conditions:\n        - operator: capture_data\n          parameters:\n            - inputs:\n                - address: server.request.query\n                  keyPaths:\n                    - payment_id\n              value: payment\n      scopes:\n        - env: prod\n          service: paymentsvc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/appsecWafCustomRule:AppsecWafCustomRule new_list \"\"\n```\n\n",
            "properties": {
                "action": {
                    "$ref": "#/types/datadog:index/AppsecWafCustomRuleAction:AppsecWafCustomRuleAction"
                },
                "blocking": {
                    "type": "boolean",
                    "description": "Indicates whether the WAF custom rule will block the request.\n"
                },
                "conditions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafCustomRuleCondition:AppsecWafCustomRuleCondition"
                    }
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the WAF custom rule is enabled.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The Name of the WAF custom rule.\n"
                },
                "pathGlob": {
                    "type": "string",
                    "description": "The path glob for the WAF custom rule.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafCustomRuleScope:AppsecWafCustomRuleScope"
                    }
                },
                "tags": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Tags associated with the WAF custom rule. \u003cspan pulumi-lang-nodejs=\"`category`\" pulumi-lang-dotnet=\"`Category`\" pulumi-lang-go=\"`category`\" pulumi-lang-python=\"`category`\" pulumi-lang-yaml=\"`category`\" pulumi-lang-java=\"`category`\"\u003e`category`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e tags are required. Supported categories include \u003cspan pulumi-lang-nodejs=\"`businessLogic`\" pulumi-lang-dotnet=\"`BusinessLogic`\" pulumi-lang-go=\"`businessLogic`\" pulumi-lang-python=\"`business_logic`\" pulumi-lang-yaml=\"`businessLogic`\" pulumi-lang-java=\"`businessLogic`\"\u003e`businessLogic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`attackAttempt`\" pulumi-lang-dotnet=\"`AttackAttempt`\" pulumi-lang-go=\"`attackAttempt`\" pulumi-lang-python=\"`attack_attempt`\" pulumi-lang-yaml=\"`attackAttempt`\" pulumi-lang-java=\"`attackAttempt`\"\u003e`attackAttempt`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`securityResponse`\" pulumi-lang-dotnet=\"`SecurityResponse`\" pulumi-lang-go=\"`securityResponse`\" pulumi-lang-python=\"`security_response`\" pulumi-lang-yaml=\"`securityResponse`\" pulumi-lang-java=\"`securityResponse`\"\u003e`securityResponse`\u003c/span\u003e.\n"
                }
            },
            "required": [
                "blocking",
                "enabled",
                "name",
                "tags"
            ],
            "inputProperties": {
                "action": {
                    "$ref": "#/types/datadog:index/AppsecWafCustomRuleAction:AppsecWafCustomRuleAction"
                },
                "blocking": {
                    "type": "boolean",
                    "description": "Indicates whether the WAF custom rule will block the request.\n"
                },
                "conditions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafCustomRuleCondition:AppsecWafCustomRuleCondition"
                    }
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the WAF custom rule is enabled.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The Name of the WAF custom rule.\n"
                },
                "pathGlob": {
                    "type": "string",
                    "description": "The path glob for the WAF custom rule.\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafCustomRuleScope:AppsecWafCustomRuleScope"
                    }
                },
                "tags": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Tags associated with the WAF custom rule. \u003cspan pulumi-lang-nodejs=\"`category`\" pulumi-lang-dotnet=\"`Category`\" pulumi-lang-go=\"`category`\" pulumi-lang-python=\"`category`\" pulumi-lang-yaml=\"`category`\" pulumi-lang-java=\"`category`\"\u003e`category`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e tags are required. Supported categories include \u003cspan pulumi-lang-nodejs=\"`businessLogic`\" pulumi-lang-dotnet=\"`BusinessLogic`\" pulumi-lang-go=\"`businessLogic`\" pulumi-lang-python=\"`business_logic`\" pulumi-lang-yaml=\"`businessLogic`\" pulumi-lang-java=\"`businessLogic`\"\u003e`businessLogic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`attackAttempt`\" pulumi-lang-dotnet=\"`AttackAttempt`\" pulumi-lang-go=\"`attackAttempt`\" pulumi-lang-python=\"`attack_attempt`\" pulumi-lang-yaml=\"`attackAttempt`\" pulumi-lang-java=\"`attackAttempt`\"\u003e`attackAttempt`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`securityResponse`\" pulumi-lang-dotnet=\"`SecurityResponse`\" pulumi-lang-go=\"`securityResponse`\" pulumi-lang-python=\"`security_response`\" pulumi-lang-yaml=\"`securityResponse`\" pulumi-lang-java=\"`securityResponse`\"\u003e`securityResponse`\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "blocking",
                "enabled",
                "name",
                "tags"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AppsecWafCustomRule resources.\n",
                "properties": {
                    "action": {
                        "$ref": "#/types/datadog:index/AppsecWafCustomRuleAction:AppsecWafCustomRuleAction"
                    },
                    "blocking": {
                        "type": "boolean",
                        "description": "Indicates whether the WAF custom rule will block the request.\n"
                    },
                    "conditions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/AppsecWafCustomRuleCondition:AppsecWafCustomRuleCondition"
                        }
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether the WAF custom rule is enabled.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The Name of the WAF custom rule.\n"
                    },
                    "pathGlob": {
                        "type": "string",
                        "description": "The path glob for the WAF custom rule.\n"
                    },
                    "scopes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/AppsecWafCustomRuleScope:AppsecWafCustomRuleScope"
                        }
                    },
                    "tags": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        },
                        "description": "Tags associated with the WAF custom rule. \u003cspan pulumi-lang-nodejs=\"`category`\" pulumi-lang-dotnet=\"`Category`\" pulumi-lang-go=\"`category`\" pulumi-lang-python=\"`category`\" pulumi-lang-yaml=\"`category`\" pulumi-lang-java=\"`category`\"\u003e`category`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e tags are required. Supported categories include \u003cspan pulumi-lang-nodejs=\"`businessLogic`\" pulumi-lang-dotnet=\"`BusinessLogic`\" pulumi-lang-go=\"`businessLogic`\" pulumi-lang-python=\"`business_logic`\" pulumi-lang-yaml=\"`businessLogic`\" pulumi-lang-java=\"`businessLogic`\"\u003e`businessLogic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`attackAttempt`\" pulumi-lang-dotnet=\"`AttackAttempt`\" pulumi-lang-go=\"`attackAttempt`\" pulumi-lang-python=\"`attack_attempt`\" pulumi-lang-yaml=\"`attackAttempt`\" pulumi-lang-java=\"`attackAttempt`\"\u003e`attackAttempt`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`securityResponse`\" pulumi-lang-dotnet=\"`SecurityResponse`\" pulumi-lang-go=\"`securityResponse`\" pulumi-lang-python=\"`security_response`\" pulumi-lang-yaml=\"`securityResponse`\" pulumi-lang-java=\"`securityResponse`\"\u003e`securityResponse`\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/appsecWafExclusionFilter:AppsecWafExclusionFilter": {
            "description": "Provides a Datadog AppsecWafExclusionFilter resource. This can be used to create and manage Datadog appsec_waf_exclusion_filter.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create a WAF exclusion filter on a path\nconst excludeOnPath = new datadog.index.AppsecExclusionFilter(\"exclude_on_path\", {\n    description: \"Exclude false positives on a path\",\n    enabled: true,\n    pathGlob: \"/accounts/*\",\n    rulesTarget: [{\n        tags: [{\n            category: \"attack_attempt\",\n            type: \"lfi\",\n        }],\n    }],\n    scope: [{\n        env: \"www\",\n        service: \"prod\",\n    }],\n});\n// Create a WAF exclusion filter for trusted IPs\nconst trustedIps = new datadog.index.AppsecExclusionFilter(\"trusted_ips\", {\n    description: \"Do not block office IP network\",\n    enabled: true,\n    ipList: [\"198.10.14.53/24\"],\n    onMatch: \"monitor\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create a WAF exclusion filter on a path\nexclude_on_path = datadog.index.AppsecExclusionFilter(\"exclude_on_path\",\n    description=Exclude false positives on a path,\n    enabled=True,\n    path_glob=/accounts/*,\n    rules_target=[{\n        tags: [{\n            category: attack_attempt,\n            type: lfi,\n        }],\n    }],\n    scope=[{\n        env: www,\n        service: prod,\n    }])\n# Create a WAF exclusion filter for trusted IPs\ntrusted_ips = datadog.index.AppsecExclusionFilter(\"trusted_ips\",\n    description=Do not block office IP network,\n    enabled=True,\n    ip_list=[198.10.14.53/24],\n    on_match=monitor)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a WAF exclusion filter on a path\n    var excludeOnPath = new Datadog.Index.AppsecExclusionFilter(\"exclude_on_path\", new()\n    {\n        Description = \"Exclude false positives on a path\",\n        Enabled = true,\n        PathGlob = \"/accounts/*\",\n        RulesTarget = new[]\n        {\n            \n            {\n                { \"tags\", new[]\n                {\n                    \n                    {\n                        { \"category\", \"attack_attempt\" },\n                        { \"type\", \"lfi\" },\n                    },\n                } },\n            },\n        },\n        Scope = new[]\n        {\n            \n            {\n                { \"env\", \"www\" },\n                { \"service\", \"prod\" },\n            },\n        },\n    });\n\n    // Create a WAF exclusion filter for trusted IPs\n    var trustedIps = new Datadog.Index.AppsecExclusionFilter(\"trusted_ips\", new()\n    {\n        Description = \"Do not block office IP network\",\n        Enabled = true,\n        IpList = new[]\n        {\n            \"198.10.14.53/24\",\n        },\n        OnMatch = \"monitor\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a WAF exclusion filter on a path\n\t\t_, err := datadog.NewAppsecExclusionFilter(ctx, \"exclude_on_path\", \u0026datadog.AppsecExclusionFilterArgs{\n\t\t\tDescription: \"Exclude false positives on a path\",\n\t\t\tEnabled:     true,\n\t\t\tPathGlob:    \"/accounts/*\",\n\t\t\tRulesTarget: []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"tags\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"category\": \"attack_attempt\",\n\t\t\t\t\t\t\t\"type\":     \"lfi\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tScope: []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"env\":     \"www\",\n\t\t\t\t\t\"service\": \"prod\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a WAF exclusion filter for trusted IPs\n\t\t_, err = datadog.NewAppsecExclusionFilter(ctx, \"trusted_ips\", \u0026datadog.AppsecExclusionFilterArgs{\n\t\t\tDescription: \"Do not block office IP network\",\n\t\t\tEnabled:     true,\n\t\t\tIpList: []string{\n\t\t\t\t\"198.10.14.53/24\",\n\t\t\t},\n\t\t\tOnMatch: \"monitor\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.appsecExclusionFilter;\nimport com.pulumi.datadog.appsecExclusionFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create a WAF exclusion filter on a path\n        var excludeOnPath = new AppsecExclusionFilter(\"excludeOnPath\", AppsecExclusionFilterArgs.builder()\n            .description(\"Exclude false positives on a path\")\n            .enabled(true)\n            .pathGlob(\"/accounts/*\")\n            .rulesTarget(List.of(Map.of(\"tags\", List.of(Map.ofEntries(\n                Map.entry(\"category\", \"attack_attempt\"),\n                Map.entry(\"type\", \"lfi\")\n            )))))\n            .scope(List.of(Map.ofEntries(\n                Map.entry(\"env\", \"www\"),\n                Map.entry(\"service\", \"prod\")\n            )))\n            .build());\n\n        // Create a WAF exclusion filter for trusted IPs\n        var trustedIps = new AppsecExclusionFilter(\"trustedIps\", AppsecExclusionFilterArgs.builder()\n            .description(\"Do not block office IP network\")\n            .enabled(true)\n            .ipList(List.of(\"198.10.14.53/24\"))\n            .onMatch(\"monitor\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a WAF exclusion filter on a path\n  excludeOnPath:\n    type: datadog:appsecExclusionFilter\n    name: exclude_on_path\n    properties:\n      description: Exclude false positives on a path\n      enabled: true\n      pathGlob: /accounts/*\n      rulesTarget:\n        - tags:\n            - category: attack_attempt\n              type: lfi\n      scope:\n        - env: www\n          service: prod\n  # Create a WAF exclusion filter for trusted IPs\n  trustedIps:\n    type: datadog:appsecExclusionFilter\n    name: trusted_ips\n    properties:\n      description: Do not block office IP network\n      enabled: true\n      ipList:\n        - 198.10.14.53/24\n      onMatch: monitor\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/appsecWafExclusionFilter:AppsecWafExclusionFilter passlist_entry \"45b7032f-0ac4-4b2f-9118-363523c625f6\"\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description for the exclusion filter.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the exclusion filter is enabled.\n"
                },
                "eventQuery": {
                    "type": "string",
                    "description": "The event query matched by the legacy exclusion filter. Cannot be created nor updated.\n"
                },
                "ipLists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The client IP addresses matched by the exclusion filter (CIDR notation is supported).\n"
                },
                "onMatch": {
                    "type": "string",
                    "description": "The action taken when the exclusion filter matches. When set to \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, security traces are emitted but the requests are not blocked. By default, security traces are not emitted and the requests are not blocked.\n"
                },
                "parameters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character.\n"
                },
                "pathGlob": {
                    "type": "string",
                    "description": "The HTTP path glob expression matched by the exclusion filter.\n"
                },
                "rulesTargets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafExclusionFilterRulesTarget:AppsecWafExclusionFilterRulesTarget"
                    }
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafExclusionFilterScope:AppsecWafExclusionFilterScope"
                    }
                }
            },
            "required": [
                "description",
                "enabled"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "A description for the exclusion filter.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the exclusion filter is enabled.\n"
                },
                "eventQuery": {
                    "type": "string",
                    "description": "The event query matched by the legacy exclusion filter. Cannot be created nor updated.\n"
                },
                "ipLists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The client IP addresses matched by the exclusion filter (CIDR notation is supported).\n"
                },
                "onMatch": {
                    "type": "string",
                    "description": "The action taken when the exclusion filter matches. When set to \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, security traces are emitted but the requests are not blocked. By default, security traces are not emitted and the requests are not blocked.\n"
                },
                "parameters": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character.\n"
                },
                "pathGlob": {
                    "type": "string",
                    "description": "The HTTP path glob expression matched by the exclusion filter.\n"
                },
                "rulesTargets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafExclusionFilterRulesTarget:AppsecWafExclusionFilterRulesTarget"
                    }
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/AppsecWafExclusionFilterScope:AppsecWafExclusionFilterScope"
                    }
                }
            },
            "requiredInputs": [
                "description",
                "enabled"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AppsecWafExclusionFilter resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "A description for the exclusion filter.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether the exclusion filter is enabled.\n"
                    },
                    "eventQuery": {
                        "type": "string",
                        "description": "The event query matched by the legacy exclusion filter. Cannot be created nor updated.\n"
                    },
                    "ipLists": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The client IP addresses matched by the exclusion filter (CIDR notation is supported).\n"
                    },
                    "onMatch": {
                        "type": "string",
                        "description": "The action taken when the exclusion filter matches. When set to \u003cspan pulumi-lang-nodejs=\"`monitor`\" pulumi-lang-dotnet=\"`Monitor`\" pulumi-lang-go=\"`monitor`\" pulumi-lang-python=\"`monitor`\" pulumi-lang-yaml=\"`monitor`\" pulumi-lang-java=\"`monitor`\"\u003e`monitor`\u003c/span\u003e, security traces are emitted but the requests are not blocked. By default, security traces are not emitted and the requests are not blocked.\n"
                    },
                    "parameters": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character.\n"
                    },
                    "pathGlob": {
                        "type": "string",
                        "description": "The HTTP path glob expression matched by the exclusion filter.\n"
                    },
                    "rulesTargets": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/AppsecWafExclusionFilterRulesTarget:AppsecWafExclusionFilterRulesTarget"
                        }
                    },
                    "scopes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/AppsecWafExclusionFilterScope:AppsecWafExclusionFilterScope"
                        }
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/authnMapping:AuthnMapping": {
            "description": "Provides a Datadog AuthN Mappings resource. This feature lets you automatically assign roles to users based on their SAML attributes.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Source the role\nconst roRole = datadog.getRole({\n    filter: \"Datadog Read Only Role\",\n});\n// Create a new AuthN mapping\nconst devRoRoleMapping = new datadog.AuthnMapping(\"dev_ro_role_mapping\", {\n    key: \"Member-of\",\n    value: \"Development\",\n    role: roRole.then(roRole =\u003e roRole.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Source the role\nro_role = datadog.get_role(filter=\"Datadog Read Only Role\")\n# Create a new AuthN mapping\ndev_ro_role_mapping = datadog.AuthnMapping(\"dev_ro_role_mapping\",\n    key=\"Member-of\",\n    value=\"Development\",\n    role=ro_role.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Source the role\n    var roRole = Datadog.GetRole.Invoke(new()\n    {\n        Filter = \"Datadog Read Only Role\",\n    });\n\n    // Create a new AuthN mapping\n    var devRoRoleMapping = new Datadog.AuthnMapping(\"dev_ro_role_mapping\", new()\n    {\n        Key = \"Member-of\",\n        Value = \"Development\",\n        Role = roRole.Apply(getRoleResult =\u003e getRoleResult.Id),\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Source the role\n\t\troRole, err := datadog.LookupRole(ctx, \u0026datadog.LookupRoleArgs{\n\t\t\tFilter: \"Datadog Read Only Role\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a new AuthN mapping\n\t\t_, err = datadog.NewAuthnMapping(ctx, \"dev_ro_role_mapping\", \u0026datadog.AuthnMappingArgs{\n\t\t\tKey:   pulumi.String(\"Member-of\"),\n\t\t\tValue: pulumi.String(\"Development\"),\n\t\t\tRole:  pulumi.String(pulumi.String(roRole.Id)),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DatadogFunctions;\nimport com.pulumi.datadog.inputs.GetRoleArgs;\nimport com.pulumi.datadog.AuthnMapping;\nimport com.pulumi.datadog.AuthnMappingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Source the role\n        final var roRole = DatadogFunctions.getRole(GetRoleArgs.builder()\n            .filter(\"Datadog Read Only Role\")\n            .build());\n\n        // Create a new AuthN mapping\n        var devRoRoleMapping = new AuthnMapping(\"devRoRoleMapping\", AuthnMappingArgs.builder()\n            .key(\"Member-of\")\n            .value(\"Development\")\n            .role(roRole.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a new AuthN mapping\n  devRoRoleMapping:\n    type: datadog:AuthnMapping\n    name: dev_ro_role_mapping\n    properties:\n      key: Member-of\n      value: Development\n      role: ${roRole.id}\nvariables:\n  # Source the role\n  roRole:\n    fn::invoke:\n      function: datadog:getRole\n      arguments:\n        filter: Datadog Read Only Role\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nAuthN mappings can be imported using their ID, e.g.\n\n```sh\n$ pulumi import datadog:index/authnMapping:AuthnMapping dev_ro_mapping 000000-0000-0000-0000-000000000000\n```\n\n",
            "properties": {
                "key": {
                    "type": "string",
                    "description": "Identity provider key.\n"
                },
                "role": {
                    "type": "string",
                    "description": "The ID of a role to attach to all users with the corresponding key and value. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The ID of a team to add all users with the corresponding key and value to. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`role`\" pulumi-lang-dotnet=\"`Role`\" pulumi-lang-go=\"`role`\" pulumi-lang-python=\"`role`\" pulumi-lang-yaml=\"`role`\" pulumi-lang-java=\"`role`\"\u003e`role`\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Identity provider value.\n"
                }
            },
            "required": [
                "key",
                "value"
            ],
            "inputProperties": {
                "key": {
                    "type": "string",
                    "description": "Identity provider key.\n"
                },
                "role": {
                    "type": "string",
                    "description": "The ID of a role to attach to all users with the corresponding key and value. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e.\n"
                },
                "team": {
                    "type": "string",
                    "description": "The ID of a team to add all users with the corresponding key and value to. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`role`\" pulumi-lang-dotnet=\"`Role`\" pulumi-lang-go=\"`role`\" pulumi-lang-python=\"`role`\" pulumi-lang-yaml=\"`role`\" pulumi-lang-java=\"`role`\"\u003e`role`\u003c/span\u003e.\n"
                },
                "value": {
                    "type": "string",
                    "description": "Identity provider value.\n"
                }
            },
            "requiredInputs": [
                "key",
                "value"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AuthnMapping resources.\n",
                "properties": {
                    "key": {
                        "type": "string",
                        "description": "Identity provider key.\n"
                    },
                    "role": {
                        "type": "string",
                        "description": "The ID of a role to attach to all users with the corresponding key and value. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e.\n"
                    },
                    "team": {
                        "type": "string",
                        "description": "The ID of a team to add all users with the corresponding key and value to. Cannot be used in conjunction with \u003cspan pulumi-lang-nodejs=\"`role`\" pulumi-lang-dotnet=\"`Role`\" pulumi-lang-go=\"`role`\" pulumi-lang-python=\"`role`\" pulumi-lang-yaml=\"`role`\" pulumi-lang-java=\"`role`\"\u003e`role`\u003c/span\u003e.\n"
                    },
                    "value": {
                        "type": "string",
                        "description": "Identity provider value.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/awsCurConfig:AwsCurConfig": {
            "description": "Provides a Datadog AWS CUR (Cost and Usage Report) configuration resource. This enables Datadog Cloud Cost Management to access your AWS billing data by configuring the connection to your AWS Cost and Usage Report. **Prerequisites**: An active Datadog AWS integration, existing AWS Cost and Usage Report, and proper S3 bucket permissions.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new aws_cur_config resource\nconst foo = new datadog.AwsCurConfig(\"foo\", {\n    accountId: \"123456789123\",\n    bucketName: \"dd-cost-bucket\",\n    bucketRegion: \"us-east-1\",\n    reportName: \"dd-report-name\",\n    reportPrefix: \"dd-report-prefix\",\n    accountFilters: [{\n        includeNewAccounts: true,\n        excludedAccounts: [\n            \"123456789123\",\n            \"123456789143\",\n        ],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new aws_cur_config resource\nfoo = datadog.AwsCurConfig(\"foo\",\n    account_id=\"123456789123\",\n    bucket_name=\"dd-cost-bucket\",\n    bucket_region=\"us-east-1\",\n    report_name=\"dd-report-name\",\n    report_prefix=\"dd-report-prefix\",\n    account_filters=[{\n        \"includeNewAccounts\": True,\n        \"excludedAccounts\": [\n            \"123456789123\",\n            \"123456789143\",\n        ],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new aws_cur_config resource\n    var foo = new Datadog.AwsCurConfig(\"foo\", new()\n    {\n        AccountId = \"123456789123\",\n        BucketName = \"dd-cost-bucket\",\n        BucketRegion = \"us-east-1\",\n        ReportName = \"dd-report-name\",\n        ReportPrefix = \"dd-report-prefix\",\n        AccountFilters = new[]\n        {\n            \n            {\n                { \"includeNewAccounts\", true },\n                { \"excludedAccounts\", new[]\n                {\n                    \"123456789123\",\n                    \"123456789143\",\n                } },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new aws_cur_config resource\n\t\t_, err := datadog.NewAwsCurConfig(ctx, \"foo\", \u0026datadog.AwsCurConfigArgs{\n\t\t\tAccountId:    pulumi.String(\"123456789123\"),\n\t\t\tBucketName:   pulumi.String(\"dd-cost-bucket\"),\n\t\t\tBucketRegion: pulumi.String(\"us-east-1\"),\n\t\t\tReportName:   pulumi.String(\"dd-report-name\"),\n\t\t\tReportPrefix: pulumi.String(\"dd-report-prefix\"),\n\t\t\tAccountFilters: datadog.AwsCurConfigAccountFiltersArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"includeNewAccounts\": true,\n\t\t\t\t\t\"excludedAccounts\": []string{\n\t\t\t\t\t\t\"123456789123\",\n\t\t\t\t\t\t\"123456789143\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.AwsCurConfig;\nimport com.pulumi.datadog.AwsCurConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new aws_cur_config resource\n        var foo = new AwsCurConfig(\"foo\", AwsCurConfigArgs.builder()\n            .accountId(\"123456789123\")\n            .bucketName(\"dd-cost-bucket\")\n            .bucketRegion(\"us-east-1\")\n            .reportName(\"dd-report-name\")\n            .reportPrefix(\"dd-report-prefix\")\n            .accountFilters(AwsCurConfigAccountFiltersArgs.builder()\n                .includeNewAccounts(true)\n                .excludedAccounts(                \n                    \"123456789123\",\n                    \"123456789143\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new aws_cur_config resource\n  foo:\n    type: datadog:AwsCurConfig\n    properties:\n      accountId: '123456789123'\n      bucketName: dd-cost-bucket\n      bucketRegion: us-east-1\n      reportName: dd-report-name\n      reportPrefix: dd-report-prefix\n      accountFilters:\n        - includeNewAccounts: true\n          excludedAccounts:\n            - '123456789123'\n            - '123456789143'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/awsCurConfig:AwsCurConfig aws_cur_report \u003ccloud_account_id\u003e\n```\n\n",
            "properties": {
                "accountFilters": {
                    "$ref": "#/types/datadog:index/AwsCurConfigAccountFilters:AwsCurConfigAccountFilters"
                },
                "accountId": {
                    "type": "string",
                    "description": "The AWS account ID of your billing/payer account. For AWS Organizations, this is typically the management account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "The S3 bucket name where your AWS Cost and Usage Report files are stored. This bucket must have appropriate IAM permissions for Datadog access and should be in the same AWS account as the CUR report.\n"
                },
                "bucketRegion": {
                    "type": "string",
                    "description": "The AWS region where the S3 bucket containing your Cost and Usage Report is located (e.g., us-east-1, eu-west-1).\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "The timestamp when the AWS CUR configuration was created.\n"
                },
                "errorMessages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of error messages if the AWS CUR configuration encountered any issues during setup or data processing.\n"
                },
                "reportName": {
                    "type": "string",
                    "description": "The exact name of your AWS Cost and Usage Report as configured in AWS Billing preferences. This must match the report name exactly as it appears in your AWS billing settings.\n"
                },
                "reportPrefix": {
                    "type": "string",
                    "description": "The S3 key prefix where your Cost and Usage Report files are stored within the bucket (e.g., 'cur-reports/', 'billing/cur/').\n"
                },
                "status": {
                    "type": "string",
                    "description": "The current status of the AWS CUR configuration.\n"
                },
                "statusUpdatedAt": {
                    "type": "string",
                    "description": "The timestamp when the configuration status was last updated.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "The timestamp when the AWS CUR configuration was last modified.\n"
                }
            },
            "required": [
                "accountId",
                "bucketName",
                "createdAt",
                "errorMessages",
                "reportName",
                "reportPrefix",
                "status",
                "statusUpdatedAt",
                "updatedAt"
            ],
            "inputProperties": {
                "accountFilters": {
                    "$ref": "#/types/datadog:index/AwsCurConfigAccountFilters:AwsCurConfigAccountFilters"
                },
                "accountId": {
                    "type": "string",
                    "description": "The AWS account ID of your billing/payer account. For AWS Organizations, this is typically the management account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "The S3 bucket name where your AWS Cost and Usage Report files are stored. This bucket must have appropriate IAM permissions for Datadog access and should be in the same AWS account as the CUR report.\n"
                },
                "bucketRegion": {
                    "type": "string",
                    "description": "The AWS region where the S3 bucket containing your Cost and Usage Report is located (e.g., us-east-1, eu-west-1).\n"
                },
                "reportName": {
                    "type": "string",
                    "description": "The exact name of your AWS Cost and Usage Report as configured in AWS Billing preferences. This must match the report name exactly as it appears in your AWS billing settings.\n"
                },
                "reportPrefix": {
                    "type": "string",
                    "description": "The S3 key prefix where your Cost and Usage Report files are stored within the bucket (e.g., 'cur-reports/', 'billing/cur/').\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "bucketName",
                "reportName",
                "reportPrefix"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AwsCurConfig resources.\n",
                "properties": {
                    "accountFilters": {
                        "$ref": "#/types/datadog:index/AwsCurConfigAccountFilters:AwsCurConfigAccountFilters"
                    },
                    "accountId": {
                        "type": "string",
                        "description": "The AWS account ID of your billing/payer account. For AWS Organizations, this is typically the management account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "The S3 bucket name where your AWS Cost and Usage Report files are stored. This bucket must have appropriate IAM permissions for Datadog access and should be in the same AWS account as the CUR report.\n"
                    },
                    "bucketRegion": {
                        "type": "string",
                        "description": "The AWS region where the S3 bucket containing your Cost and Usage Report is located (e.g., us-east-1, eu-west-1).\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "The timestamp when the AWS CUR configuration was created.\n"
                    },
                    "errorMessages": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of error messages if the AWS CUR configuration encountered any issues during setup or data processing.\n"
                    },
                    "reportName": {
                        "type": "string",
                        "description": "The exact name of your AWS Cost and Usage Report as configured in AWS Billing preferences. This must match the report name exactly as it appears in your AWS billing settings.\n"
                    },
                    "reportPrefix": {
                        "type": "string",
                        "description": "The S3 key prefix where your Cost and Usage Report files are stored within the bucket (e.g., 'cur-reports/', 'billing/cur/').\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The current status of the AWS CUR configuration.\n"
                    },
                    "statusUpdatedAt": {
                        "type": "string",
                        "description": "The timestamp when the configuration status was last updated.\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "The timestamp when the AWS CUR configuration was last modified.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/azureUcConfig:AzureUcConfig": {
            "description": "Provides a Datadog Azure Usage Cost configuration resource. This can be used to create and manage Azure Cost Export configurations for Cloud Cost Management. Azure configurations require both actual and amortized cost export settings.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new Azure Usage Cost configuration resource\nconst example = new datadog.AzureUcConfig(\"example\", {\n    accountId: \"12345678-1234-abcd-1234-123456789012\",\n    clientId: \"87654321-4321-dcba-4321-210987654321\",\n    scope: \"/subscriptions/12345678-1234-abcd-1234-123456789012\",\n    actualBillConfig: [{\n        exportName: \"my-actual-export\",\n        exportPath: \"exports/actual\",\n        storageAccount: \"mystorageaccount\",\n        storageContainer: \"cost-exports\",\n    }],\n    amortizedBillConfig: [{\n        exportName: \"my-amortized-export\",\n        exportPath: \"exports/amortized\",\n        storageAccount: \"mystorageaccount\",\n        storageContainer: \"cost-exports\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new Azure Usage Cost configuration resource\nexample = datadog.AzureUcConfig(\"example\",\n    account_id=\"12345678-1234-abcd-1234-123456789012\",\n    client_id=\"87654321-4321-dcba-4321-210987654321\",\n    scope=\"/subscriptions/12345678-1234-abcd-1234-123456789012\",\n    actual_bill_config=[{\n        \"exportName\": \"my-actual-export\",\n        \"exportPath\": \"exports/actual\",\n        \"storageAccount\": \"mystorageaccount\",\n        \"storageContainer\": \"cost-exports\",\n    }],\n    amortized_bill_config=[{\n        \"exportName\": \"my-amortized-export\",\n        \"exportPath\": \"exports/amortized\",\n        \"storageAccount\": \"mystorageaccount\",\n        \"storageContainer\": \"cost-exports\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new Azure Usage Cost configuration resource\n    var example = new Datadog.AzureUcConfig(\"example\", new()\n    {\n        AccountId = \"12345678-1234-abcd-1234-123456789012\",\n        ClientId = \"87654321-4321-dcba-4321-210987654321\",\n        Scope = \"/subscriptions/12345678-1234-abcd-1234-123456789012\",\n        ActualBillConfig = new[]\n        {\n            \n            {\n                { \"exportName\", \"my-actual-export\" },\n                { \"exportPath\", \"exports/actual\" },\n                { \"storageAccount\", \"mystorageaccount\" },\n                { \"storageContainer\", \"cost-exports\" },\n            },\n        },\n        AmortizedBillConfig = new[]\n        {\n            \n            {\n                { \"exportName\", \"my-amortized-export\" },\n                { \"exportPath\", \"exports/amortized\" },\n                { \"storageAccount\", \"mystorageaccount\" },\n                { \"storageContainer\", \"cost-exports\" },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new Azure Usage Cost configuration resource\n\t\t_, err := datadog.NewAzureUcConfig(ctx, \"example\", \u0026datadog.AzureUcConfigArgs{\n\t\t\tAccountId: pulumi.String(\"12345678-1234-abcd-1234-123456789012\"),\n\t\t\tClientId:  pulumi.String(\"87654321-4321-dcba-4321-210987654321\"),\n\t\t\tScope:     pulumi.String(\"/subscriptions/12345678-1234-abcd-1234-123456789012\"),\n\t\t\tActualBillConfig: datadog.AzureUcConfigActualBillConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"exportName\":       \"my-actual-export\",\n\t\t\t\t\t\"exportPath\":       \"exports/actual\",\n\t\t\t\t\t\"storageAccount\":   \"mystorageaccount\",\n\t\t\t\t\t\"storageContainer\": \"cost-exports\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tAmortizedBillConfig: datadog.AzureUcConfigAmortizedBillConfigArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"exportName\":       \"my-amortized-export\",\n\t\t\t\t\t\"exportPath\":       \"exports/amortized\",\n\t\t\t\t\t\"storageAccount\":   \"mystorageaccount\",\n\t\t\t\t\t\"storageContainer\": \"cost-exports\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.AzureUcConfig;\nimport com.pulumi.datadog.AzureUcConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new Azure Usage Cost configuration resource\n        var example = new AzureUcConfig(\"example\", AzureUcConfigArgs.builder()\n            .accountId(\"12345678-1234-abcd-1234-123456789012\")\n            .clientId(\"87654321-4321-dcba-4321-210987654321\")\n            .scope(\"/subscriptions/12345678-1234-abcd-1234-123456789012\")\n            .actualBillConfig(AzureUcConfigActualBillConfigArgs.builder()\n                .exportName(\"my-actual-export\")\n                .exportPath(\"exports/actual\")\n                .storageAccount(\"mystorageaccount\")\n                .storageContainer(\"cost-exports\")\n                .build())\n            .amortizedBillConfig(AzureUcConfigAmortizedBillConfigArgs.builder()\n                .exportName(\"my-amortized-export\")\n                .exportPath(\"exports/amortized\")\n                .storageAccount(\"mystorageaccount\")\n                .storageContainer(\"cost-exports\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new Azure Usage Cost configuration resource\n  example:\n    type: datadog:AzureUcConfig\n    properties:\n      accountId: 12345678-1234-abcd-1234-123456789012\n      clientId: 87654321-4321-dcba-4321-210987654321\n      scope: /subscriptions/12345678-1234-abcd-1234-123456789012\n      actualBillConfig:\n        - exportName: my-actual-export\n          exportPath: exports/actual\n          storageAccount: mystorageaccount\n          storageContainer: cost-exports\n      amortizedBillConfig:\n        - exportName: my-amortized-export\n          exportPath: exports/amortized\n          storageAccount: mystorageaccount\n          storageContainer: cost-exports\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/azureUcConfig:AzureUcConfig example \u003ccloud_account_id\u003e\n```\n\n",
            "properties": {
                "accountId": {
                    "type": "string",
                    "description": "The tenant ID of the Azure account.\n"
                },
                "actualBillConfig": {
                    "$ref": "#/types/datadog:index/AzureUcConfigActualBillConfig:AzureUcConfigActualBillConfig",
                    "description": "Configuration for the actual cost export.\n"
                },
                "amortizedBillConfig": {
                    "$ref": "#/types/datadog:index/AzureUcConfigAmortizedBillConfig:AzureUcConfigAmortizedBillConfig",
                    "description": "Configuration for the amortized cost export.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The client ID of the Azure account.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "The timestamp when the Azure Usage Cost configuration was created.\n"
                },
                "errorMessages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of error messages if the Azure Usage Cost configuration encountered any issues during setup or data processing.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope of your observed subscription.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The current status of the Azure Usage Cost configuration.\n"
                },
                "statusUpdatedAt": {
                    "type": "string",
                    "description": "The timestamp when the configuration status was last updated.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "The timestamp when the Azure Usage Cost configuration was last modified.\n"
                }
            },
            "required": [
                "accountId",
                "clientId",
                "createdAt",
                "errorMessages",
                "scope",
                "status",
                "statusUpdatedAt",
                "updatedAt"
            ],
            "inputProperties": {
                "accountId": {
                    "type": "string",
                    "description": "The tenant ID of the Azure account.\n"
                },
                "actualBillConfig": {
                    "$ref": "#/types/datadog:index/AzureUcConfigActualBillConfig:AzureUcConfigActualBillConfig",
                    "description": "Configuration for the actual cost export.\n"
                },
                "amortizedBillConfig": {
                    "$ref": "#/types/datadog:index/AzureUcConfigAmortizedBillConfig:AzureUcConfigAmortizedBillConfig",
                    "description": "Configuration for the amortized cost export.\n"
                },
                "clientId": {
                    "type": "string",
                    "description": "The client ID of the Azure account.\n"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope of your observed subscription.\n"
                }
            },
            "requiredInputs": [
                "accountId",
                "clientId",
                "scope"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering AzureUcConfig resources.\n",
                "properties": {
                    "accountId": {
                        "type": "string",
                        "description": "The tenant ID of the Azure account.\n"
                    },
                    "actualBillConfig": {
                        "$ref": "#/types/datadog:index/AzureUcConfigActualBillConfig:AzureUcConfigActualBillConfig",
                        "description": "Configuration for the actual cost export.\n"
                    },
                    "amortizedBillConfig": {
                        "$ref": "#/types/datadog:index/AzureUcConfigAmortizedBillConfig:AzureUcConfigAmortizedBillConfig",
                        "description": "Configuration for the amortized cost export.\n"
                    },
                    "clientId": {
                        "type": "string",
                        "description": "The client ID of the Azure account.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "The timestamp when the Azure Usage Cost configuration was created.\n"
                    },
                    "errorMessages": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of error messages if the Azure Usage Cost configuration encountered any issues during setup or data processing.\n"
                    },
                    "scope": {
                        "type": "string",
                        "description": "The scope of your observed subscription.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The current status of the Azure Usage Cost configuration.\n"
                    },
                    "statusUpdatedAt": {
                        "type": "string",
                        "description": "The timestamp when the configuration status was last updated.\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "The timestamp when the Azure Usage Cost configuration was last modified.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/childOrganization:ChildOrganization": {
            "description": "Provides a Datadog Child Organization resource. This can be used to create Datadog Child Organizations. To manage created organization use \u003cspan pulumi-lang-nodejs=\"`datadog.OrganizationSettings`\" pulumi-lang-dotnet=\"`datadog.OrganizationSettings`\" pulumi-lang-go=\"`OrganizationSettings`\" pulumi-lang-python=\"`OrganizationSettings`\" pulumi-lang-yaml=\"`datadog.OrganizationSettings`\" pulumi-lang-java=\"`datadog.OrganizationSettings`\"\u003e`datadog.OrganizationSettings`\u003c/span\u003e.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create a new Datadog Child Organization\nconst organization = new datadog.ChildOrganization(\"organization\", {name: \"foo-organization\"});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create a new Datadog Child Organization\norganization = datadog.ChildOrganization(\"organization\", name=\"foo-organization\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a new Datadog Child Organization\n    var organization = new Datadog.ChildOrganization(\"organization\", new()\n    {\n        Name = \"foo-organization\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new Datadog Child Organization\n\t\t_, err := datadog.NewChildOrganization(ctx, \"organization\", \u0026datadog.ChildOrganizationArgs{\n\t\t\tName: pulumi.String(\"foo-organization\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ChildOrganization;\nimport com.pulumi.datadog.ChildOrganizationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create a new Datadog Child Organization\n        var organization = new ChildOrganization(\"organization\", ChildOrganizationArgs.builder()\n            .name(\"foo-organization\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a new Datadog Child Organization\n  organization:\n    type: datadog:ChildOrganization\n    properties:\n      name: foo-organization\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "properties": {
                "apiKeys": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ChildOrganizationApiKey:ChildOrganizationApiKey"
                    },
                    "description": "Datadog API key.\n"
                },
                "applicationKeys": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ChildOrganizationApplicationKey:ChildOrganizationApplicationKey"
                    },
                    "description": "An application key with its associated metadata.\n"
                },
                "description": {
                    "type": "string",
                    "description": "Description of the organization.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name for Child Organization after creation.\n"
                },
                "publicId": {
                    "type": "string",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`publicId`\" pulumi-lang-dotnet=\"`PublicId`\" pulumi-lang-go=\"`publicId`\" pulumi-lang-python=\"`public_id`\" pulumi-lang-yaml=\"`publicId`\" pulumi-lang-java=\"`publicId`\"\u003e`publicId`\u003c/span\u003e of the organization you are operating within.\n"
                },
                "settings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ChildOrganizationSetting:ChildOrganizationSetting"
                    },
                    "description": "Organization settings\n"
                },
                "users": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ChildOrganizationUser:ChildOrganizationUser"
                    },
                    "description": "Information about a user\n"
                }
            },
            "required": [
                "apiKeys",
                "applicationKeys",
                "description",
                "name",
                "publicId",
                "settings",
                "users"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "Name for Child Organization after creation.\n",
                    "willReplaceOnChanges": true
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ChildOrganization resources.\n",
                "properties": {
                    "apiKeys": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/ChildOrganizationApiKey:ChildOrganizationApiKey"
                        },
                        "description": "Datadog API key.\n"
                    },
                    "applicationKeys": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/ChildOrganizationApplicationKey:ChildOrganizationApplicationKey"
                        },
                        "description": "An application key with its associated metadata.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "Description of the organization.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name for Child Organization after creation.\n",
                        "willReplaceOnChanges": true
                    },
                    "publicId": {
                        "type": "string",
                        "description": "The \u003cspan pulumi-lang-nodejs=\"`publicId`\" pulumi-lang-dotnet=\"`PublicId`\" pulumi-lang-go=\"`publicId`\" pulumi-lang-python=\"`public_id`\" pulumi-lang-yaml=\"`publicId`\" pulumi-lang-java=\"`publicId`\"\u003e`publicId`\u003c/span\u003e of the organization you are operating within.\n"
                    },
                    "settings": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/ChildOrganizationSetting:ChildOrganizationSetting"
                        },
                        "description": "Organization settings\n"
                    },
                    "users": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/ChildOrganizationUser:ChildOrganizationUser"
                        },
                        "description": "Information about a user\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/cloudConfigurationRule:CloudConfigurationRule": {
            "description": "Provides a Datadog Cloud Configuration Rule resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst myrule = new datadog.CloudConfigurationRule(\"myrule\", {\n    name: \"My cloud configuration rule\",\n    message: \"Rule has triggered\",\n    enabled: true,\n    policy: `package datadog\n\nimport data.datadog.output as dd_output\n\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n    # Logic that evaluates to true if the resource should be skipped\n    true\n} else = \"pass\" {\n    # Logic that evaluates to true if the resource is compliant\n    true\n} else = \"fail\" {\n    # Logic that evaluates to true if the resource is not compliant\n    true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n    some resource in input.resources[input.main_resource_type]\n    result := dd_output.format(resource, eval(resource))\n}\n`,\n    resourceType: \"aws_s3_bucket\",\n    relatedResourceTypes: [],\n    severity: \"high\",\n    groupBies: [\"@resource\"],\n    notifications: [\"@channel\"],\n    tags: [\"some:tag\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmyrule = datadog.CloudConfigurationRule(\"myrule\",\n    name=\"My cloud configuration rule\",\n    message=\"Rule has triggered\",\n    enabled=True,\n    policy=\"\"\"package datadog\n\nimport data.datadog.output as dd_output\n\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n    # Logic that evaluates to true if the resource should be skipped\n    true\n} else = \"pass\" {\n    # Logic that evaluates to true if the resource is compliant\n    true\n} else = \"fail\" {\n    # Logic that evaluates to true if the resource is not compliant\n    true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n    some resource in input.resources[input.main_resource_type]\n    result := dd_output.format(resource, eval(resource))\n}\n\"\"\",\n    resource_type=\"aws_s3_bucket\",\n    related_resource_types=[],\n    severity=\"high\",\n    group_bies=[\"@resource\"],\n    notifications=[\"@channel\"],\n    tags=[\"some:tag\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myrule = new Datadog.CloudConfigurationRule(\"myrule\", new()\n    {\n        Name = \"My cloud configuration rule\",\n        Message = \"Rule has triggered\",\n        Enabled = true,\n        Policy = @\"package datadog\n\nimport data.datadog.output as dd_output\n\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"\"skip\"\" if {\n    # Logic that evaluates to true if the resource should be skipped\n    true\n} else = \"\"pass\"\" {\n    # Logic that evaluates to true if the resource is compliant\n    true\n} else = \"\"fail\"\" {\n    # Logic that evaluates to true if the resource is not compliant\n    true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n    some resource in input.resources[input.main_resource_type]\n    result := dd_output.format(resource, eval(resource))\n}\n\",\n        ResourceType = \"aws_s3_bucket\",\n        RelatedResourceTypes = new[] {},\n        Severity = \"high\",\n        GroupBies = new[]\n        {\n            \"@resource\",\n        },\n        Notifications = new[]\n        {\n            \"@channel\",\n        },\n        Tags = new[]\n        {\n            \"some:tag\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewCloudConfigurationRule(ctx, \"myrule\", \u0026datadog.CloudConfigurationRuleArgs{\n\t\t\tName:    pulumi.String(\"My cloud configuration rule\"),\n\t\t\tMessage: pulumi.String(\"Rule has triggered\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tPolicy: pulumi.String(`package datadog\n\nimport data.datadog.output as dd_output\n\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n    # Logic that evaluates to true if the resource should be skipped\n    true\n} else = \"pass\" {\n    # Logic that evaluates to true if the resource is compliant\n    true\n} else = \"fail\" {\n    # Logic that evaluates to true if the resource is not compliant\n    true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n    some resource in input.resources[input.main_resource_type]\n    result := dd_output.format(resource, eval(resource))\n}\n`),\n\t\t\tResourceType:         pulumi.String(\"aws_s3_bucket\"),\n\t\t\tRelatedResourceTypes: pulumi.StringArray{},\n\t\t\tSeverity:             pulumi.String(\"high\"),\n\t\t\tGroupBies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"@resource\"),\n\t\t\t},\n\t\t\tNotifications: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"@channel\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"some:tag\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CloudConfigurationRule;\nimport com.pulumi.datadog.CloudConfigurationRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myrule = new CloudConfigurationRule(\"myrule\", CloudConfigurationRuleArgs.builder()\n            .name(\"My cloud configuration rule\")\n            .message(\"Rule has triggered\")\n            .enabled(true)\n            .policy(\"\"\"\npackage datadog\n\nimport data.datadog.output as dd_output\n\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n    # Logic that evaluates to true if the resource should be skipped\n    true\n} else = \"pass\" {\n    # Logic that evaluates to true if the resource is compliant\n    true\n} else = \"fail\" {\n    # Logic that evaluates to true if the resource is not compliant\n    true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n    some resource in input.resources[input.main_resource_type]\n    result := dd_output.format(resource, eval(resource))\n}\n            \"\"\")\n            .resourceType(\"aws_s3_bucket\")\n            .relatedResourceTypes()\n            .severity(\"high\")\n            .groupBies(\"@resource\")\n            .notifications(\"@channel\")\n            .tags(\"some:tag\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myrule:\n    type: datadog:CloudConfigurationRule\n    properties:\n      name: My cloud configuration rule\n      message: Rule has triggered\n      enabled: true\n      policy: |\n        package datadog\n\n        import data.datadog.output as dd_output\n\n        import future.keywords.contains\n        import future.keywords.if\n        import future.keywords.in\n\n        eval(resource) = \"skip\" if {\n            # Logic that evaluates to true if the resource should be skipped\n            true\n        } else = \"pass\" {\n            # Logic that evaluates to true if the resource is compliant\n            true\n        } else = \"fail\" {\n            # Logic that evaluates to true if the resource is not compliant\n            true\n        }\n\n        # This part remains unchanged for all rules\n        results contains result if {\n            some resource in input.resources[input.main_resource_type]\n            result := dd_output.format(resource, eval(resource))\n        }\n      resourceType: aws_s3_bucket\n      relatedResourceTypes: []\n      severity: high\n      groupBies:\n        - '@resource'\n      notifications:\n        - '@channel'\n      tags:\n        - some:tag\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nSecurity monitoring rules can be imported using ID, e.g.\n\n```sh\n$ pulumi import datadog:index/cloudConfigurationRule:CloudConfigurationRule my_rule m0o-hto-lkb\n```\n\n",
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the cloud configuration rule is enabled.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CloudConfigurationRuleFilter:CloudConfigurationRuleFilter"
                    },
                    "description": "Additional queries to filter matched events before they are processed. Defaults to empty list\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Defaults to empty list. This function will be deprecated soon. Use the notification rules function instead. Fields to group by when generating signals, e.g. @resource.\n"
                },
                "message": {
                    "type": "string",
                    "description": "The message associated to the rule that will be shown in findings and signals.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the cloud configuration rule.\n"
                },
                "notifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "This function will be deprecated soon. Use the notification rules function instead. Notification targets for signals. Defaults to empty list.\n"
                },
                "policy": {
                    "type": "string",
                    "description": "Policy written in Rego format.\n"
                },
                "relatedResourceTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Related resource types to be checked by the rule. Defaults to empty list.\n"
                },
                "resourceType": {
                    "type": "string",
                    "description": "Main resource type to be checked by the rule.\n"
                },
                "severity": {
                    "type": "string",
                    "description": "Severity of the rule and associated signals. Valid values are \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags of the rule, propagated to findings and signals. Defaults to empty list.\n"
                }
            },
            "required": [
                "enabled",
                "message",
                "name",
                "policy",
                "resourceType",
                "severity"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the cloud configuration rule is enabled.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CloudConfigurationRuleFilter:CloudConfigurationRuleFilter"
                    },
                    "description": "Additional queries to filter matched events before they are processed. Defaults to empty list\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Defaults to empty list. This function will be deprecated soon. Use the notification rules function instead. Fields to group by when generating signals, e.g. @resource.\n"
                },
                "message": {
                    "type": "string",
                    "description": "The message associated to the rule that will be shown in findings and signals.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the cloud configuration rule.\n"
                },
                "notifications": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "This function will be deprecated soon. Use the notification rules function instead. Notification targets for signals. Defaults to empty list.\n"
                },
                "policy": {
                    "type": "string",
                    "description": "Policy written in Rego format.\n"
                },
                "relatedResourceTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Related resource types to be checked by the rule. Defaults to empty list.\n"
                },
                "resourceType": {
                    "type": "string",
                    "description": "Main resource type to be checked by the rule.\n"
                },
                "severity": {
                    "type": "string",
                    "description": "Severity of the rule and associated signals. Valid values are \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags of the rule, propagated to findings and signals. Defaults to empty list.\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "message",
                "name",
                "policy",
                "resourceType",
                "severity"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CloudConfigurationRule resources.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the cloud configuration rule is enabled.\n"
                    },
                    "filters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/CloudConfigurationRuleFilter:CloudConfigurationRuleFilter"
                        },
                        "description": "Additional queries to filter matched events before they are processed. Defaults to empty list\n"
                    },
                    "groupBies": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Defaults to empty list. This function will be deprecated soon. Use the notification rules function instead. Fields to group by when generating signals, e.g. @resource.\n"
                    },
                    "message": {
                        "type": "string",
                        "description": "The message associated to the rule that will be shown in findings and signals.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the cloud configuration rule.\n"
                    },
                    "notifications": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "This function will be deprecated soon. Use the notification rules function instead. Notification targets for signals. Defaults to empty list.\n"
                    },
                    "policy": {
                        "type": "string",
                        "description": "Policy written in Rego format.\n"
                    },
                    "relatedResourceTypes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Related resource types to be checked by the rule. Defaults to empty list.\n"
                    },
                    "resourceType": {
                        "type": "string",
                        "description": "Main resource type to be checked by the rule.\n"
                    },
                    "severity": {
                        "type": "string",
                        "description": "Severity of the rule and associated signals. Valid values are \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Tags of the rule, propagated to findings and signals. Defaults to empty list.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/cloudInventorySyncConfig:CloudInventorySyncConfig": {
            "description": "Provides a Datadog CloudInventorySyncConfig resource. This can be used to create and manage Datadog cloud_inventory_sync_config.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// AWS Cloud Inventory Sync Config\nconst awsExample = new datadog.CloudInventorySyncConfig(\"aws_example\", {\n    cloudProvider: \"aws\",\n    aws: [{\n        awsAccountId: \"123456789012\",\n        destinationBucketName: \"my-inventory-bucket\",\n        destinationBucketRegion: \"us-east-1\",\n        destinationPrefix: \"inventory/\",\n    }],\n});\n// Azure Cloud Inventory Sync Config\nconst azureExample = new datadog.CloudInventorySyncConfig(\"azure_example\", {\n    cloudProvider: \"azure\",\n    azure: [{\n        clientId: \"00000000-0000-0000-0000-000000000000\",\n        tenantId: \"00000000-0000-0000-0000-000000000000\",\n        subscriptionId: \"00000000-0000-0000-0000-000000000000\",\n        resourceGroup: \"my-resource-group\",\n        storageAccount: \"mystorageaccount\",\n        container: \"inventory\",\n    }],\n});\n// GCP Cloud Inventory Sync Config\nconst gcpExample = new datadog.CloudInventorySyncConfig(\"gcp_example\", {\n    cloudProvider: \"gcp\",\n    gcp: [{\n        projectId: \"my-gcp-project\",\n        destinationBucketName: \"my-inventory-bucket\",\n        sourceBucketName: \"my-source-bucket\",\n        serviceAccountEmail: \"sa@my-gcp-project.iam.gserviceaccount.com\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# AWS Cloud Inventory Sync Config\naws_example = datadog.CloudInventorySyncConfig(\"aws_example\",\n    cloud_provider=\"aws\",\n    aws=[{\n        \"awsAccountId\": \"123456789012\",\n        \"destinationBucketName\": \"my-inventory-bucket\",\n        \"destinationBucketRegion\": \"us-east-1\",\n        \"destinationPrefix\": \"inventory/\",\n    }])\n# Azure Cloud Inventory Sync Config\nazure_example = datadog.CloudInventorySyncConfig(\"azure_example\",\n    cloud_provider=\"azure\",\n    azure=[{\n        \"clientId\": \"00000000-0000-0000-0000-000000000000\",\n        \"tenantId\": \"00000000-0000-0000-0000-000000000000\",\n        \"subscriptionId\": \"00000000-0000-0000-0000-000000000000\",\n        \"resourceGroup\": \"my-resource-group\",\n        \"storageAccount\": \"mystorageaccount\",\n        \"container\": \"inventory\",\n    }])\n# GCP Cloud Inventory Sync Config\ngcp_example = datadog.CloudInventorySyncConfig(\"gcp_example\",\n    cloud_provider=\"gcp\",\n    gcp=[{\n        \"projectId\": \"my-gcp-project\",\n        \"destinationBucketName\": \"my-inventory-bucket\",\n        \"sourceBucketName\": \"my-source-bucket\",\n        \"serviceAccountEmail\": \"sa@my-gcp-project.iam.gserviceaccount.com\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // AWS Cloud Inventory Sync Config\n    var awsExample = new Datadog.CloudInventorySyncConfig(\"aws_example\", new()\n    {\n        CloudProvider = \"aws\",\n        Aws = new[]\n        {\n            \n            {\n                { \"awsAccountId\", \"123456789012\" },\n                { \"destinationBucketName\", \"my-inventory-bucket\" },\n                { \"destinationBucketRegion\", \"us-east-1\" },\n                { \"destinationPrefix\", \"inventory/\" },\n            },\n        },\n    });\n\n    // Azure Cloud Inventory Sync Config\n    var azureExample = new Datadog.CloudInventorySyncConfig(\"azure_example\", new()\n    {\n        CloudProvider = \"azure\",\n        Azure = new[]\n        {\n            \n            {\n                { \"clientId\", \"00000000-0000-0000-0000-000000000000\" },\n                { \"tenantId\", \"00000000-0000-0000-0000-000000000000\" },\n                { \"subscriptionId\", \"00000000-0000-0000-0000-000000000000\" },\n                { \"resourceGroup\", \"my-resource-group\" },\n                { \"storageAccount\", \"mystorageaccount\" },\n                { \"container\", \"inventory\" },\n            },\n        },\n    });\n\n    // GCP Cloud Inventory Sync Config\n    var gcpExample = new Datadog.CloudInventorySyncConfig(\"gcp_example\", new()\n    {\n        CloudProvider = \"gcp\",\n        Gcp = new[]\n        {\n            \n            {\n                { \"projectId\", \"my-gcp-project\" },\n                { \"destinationBucketName\", \"my-inventory-bucket\" },\n                { \"sourceBucketName\", \"my-source-bucket\" },\n                { \"serviceAccountEmail\", \"sa@my-gcp-project.iam.gserviceaccount.com\" },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// AWS Cloud Inventory Sync Config\n\t\t_, err := datadog.NewCloudInventorySyncConfig(ctx, \"aws_example\", \u0026datadog.CloudInventorySyncConfigArgs{\n\t\t\tCloudProvider: pulumi.String(\"aws\"),\n\t\t\tAws: datadog.CloudInventorySyncConfigAwsArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"awsAccountId\":            \"123456789012\",\n\t\t\t\t\t\"destinationBucketName\":   \"my-inventory-bucket\",\n\t\t\t\t\t\"destinationBucketRegion\": \"us-east-1\",\n\t\t\t\t\t\"destinationPrefix\":       \"inventory/\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Azure Cloud Inventory Sync Config\n\t\t_, err = datadog.NewCloudInventorySyncConfig(ctx, \"azure_example\", \u0026datadog.CloudInventorySyncConfigArgs{\n\t\t\tCloudProvider: pulumi.String(\"azure\"),\n\t\t\tAzure: datadog.CloudInventorySyncConfigAzureArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"clientId\":       \"00000000-0000-0000-0000-000000000000\",\n\t\t\t\t\t\"tenantId\":       \"00000000-0000-0000-0000-000000000000\",\n\t\t\t\t\t\"subscriptionId\": \"00000000-0000-0000-0000-000000000000\",\n\t\t\t\t\t\"resourceGroup\":  \"my-resource-group\",\n\t\t\t\t\t\"storageAccount\": \"mystorageaccount\",\n\t\t\t\t\t\"container\":      \"inventory\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// GCP Cloud Inventory Sync Config\n\t\t_, err = datadog.NewCloudInventorySyncConfig(ctx, \"gcp_example\", \u0026datadog.CloudInventorySyncConfigArgs{\n\t\t\tCloudProvider: pulumi.String(\"gcp\"),\n\t\t\tGcp: datadog.CloudInventorySyncConfigGcpArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"projectId\":             \"my-gcp-project\",\n\t\t\t\t\t\"destinationBucketName\": \"my-inventory-bucket\",\n\t\t\t\t\t\"sourceBucketName\":      \"my-source-bucket\",\n\t\t\t\t\t\"serviceAccountEmail\":   \"sa@my-gcp-project.iam.gserviceaccount.com\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CloudInventorySyncConfig;\nimport com.pulumi.datadog.CloudInventorySyncConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // AWS Cloud Inventory Sync Config\n        var awsExample = new CloudInventorySyncConfig(\"awsExample\", CloudInventorySyncConfigArgs.builder()\n            .cloudProvider(\"aws\")\n            .aws(CloudInventorySyncConfigAwsArgs.builder()\n                .awsAccountId(\"123456789012\")\n                .destinationBucketName(\"my-inventory-bucket\")\n                .destinationBucketRegion(\"us-east-1\")\n                .destinationPrefix(\"inventory/\")\n                .build())\n            .build());\n\n        // Azure Cloud Inventory Sync Config\n        var azureExample = new CloudInventorySyncConfig(\"azureExample\", CloudInventorySyncConfigArgs.builder()\n            .cloudProvider(\"azure\")\n            .azure(CloudInventorySyncConfigAzureArgs.builder()\n                .clientId(\"00000000-0000-0000-0000-000000000000\")\n                .tenantId(\"00000000-0000-0000-0000-000000000000\")\n                .subscriptionId(\"00000000-0000-0000-0000-000000000000\")\n                .resourceGroup(\"my-resource-group\")\n                .storageAccount(\"mystorageaccount\")\n                .container(\"inventory\")\n                .build())\n            .build());\n\n        // GCP Cloud Inventory Sync Config\n        var gcpExample = new CloudInventorySyncConfig(\"gcpExample\", CloudInventorySyncConfigArgs.builder()\n            .cloudProvider(\"gcp\")\n            .gcp(CloudInventorySyncConfigGcpArgs.builder()\n                .projectId(\"my-gcp-project\")\n                .destinationBucketName(\"my-inventory-bucket\")\n                .sourceBucketName(\"my-source-bucket\")\n                .serviceAccountEmail(\"sa@my-gcp-project.iam.gserviceaccount.com\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # AWS Cloud Inventory Sync Config\n  awsExample:\n    type: datadog:CloudInventorySyncConfig\n    name: aws_example\n    properties:\n      cloudProvider: aws\n      aws:\n        - awsAccountId: '123456789012'\n          destinationBucketName: my-inventory-bucket\n          destinationBucketRegion: us-east-1\n          destinationPrefix: inventory/\n  # Azure Cloud Inventory Sync Config\n  azureExample:\n    type: datadog:CloudInventorySyncConfig\n    name: azure_example\n    properties:\n      cloudProvider: azure\n      azure:\n        - clientId: 00000000-0000-0000-0000-000000000000\n          tenantId: 00000000-0000-0000-0000-000000000000\n          subscriptionId: 00000000-0000-0000-0000-000000000000\n          resourceGroup: my-resource-group\n          storageAccount: mystorageaccount\n          container: inventory\n  # GCP Cloud Inventory Sync Config\n  gcpExample:\n    type: datadog:CloudInventorySyncConfig\n    name: gcp_example\n    properties:\n      cloudProvider: gcp\n      gcp:\n        - projectId: my-gcp-project\n          destinationBucketName: my-inventory-bucket\n          sourceBucketName: my-source-bucket\n          serviceAccountEmail: sa@my-gcp-project.iam.gserviceaccount.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nImport using the sync config ID returned by the API\n\n```sh\n$ pulumi import datadog:index/cloudInventorySyncConfig:CloudInventorySyncConfig example \"\u003csync-config-id\u003e\"\n```\n\n",
            "properties": {
                "aws": {
                    "$ref": "#/types/datadog:index/CloudInventorySyncConfigAws:CloudInventorySyncConfigAws",
                    "description": "AWS-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"
                },
                "azure": {
                    "$ref": "#/types/datadog:index/CloudInventorySyncConfigAzure:CloudInventorySyncConfigAzure",
                    "description": "Azure-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"
                },
                "cloudProvider": {
                    "type": "string",
                    "description": "The cloud provider type. Valid values are \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                },
                "gcp": {
                    "$ref": "#/types/datadog:index/CloudInventorySyncConfigGcp:CloudInventorySyncConfigGcp",
                    "description": "GCP-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                }
            },
            "required": [
                "cloudProvider"
            ],
            "inputProperties": {
                "aws": {
                    "$ref": "#/types/datadog:index/CloudInventorySyncConfigAws:CloudInventorySyncConfigAws",
                    "description": "AWS-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"
                },
                "azure": {
                    "$ref": "#/types/datadog:index/CloudInventorySyncConfigAzure:CloudInventorySyncConfigAzure",
                    "description": "Azure-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"
                },
                "cloudProvider": {
                    "type": "string",
                    "description": "The cloud provider type. Valid values are \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                },
                "gcp": {
                    "$ref": "#/types/datadog:index/CloudInventorySyncConfigGcp:CloudInventorySyncConfigGcp",
                    "description": "GCP-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "cloudProvider"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CloudInventorySyncConfig resources.\n",
                "properties": {
                    "aws": {
                        "$ref": "#/types/datadog:index/CloudInventorySyncConfigAws:CloudInventorySyncConfigAws",
                        "description": "AWS-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"
                    },
                    "azure": {
                        "$ref": "#/types/datadog:index/CloudInventorySyncConfigAzure:CloudInventorySyncConfigAzure",
                        "description": "Azure-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"
                    },
                    "cloudProvider": {
                        "type": "string",
                        "description": "The cloud provider type. Valid values are \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                    },
                    "gcp": {
                        "$ref": "#/types/datadog:index/CloudInventorySyncConfigGcp:CloudInventorySyncConfigGcp",
                        "description": "GCP-specific configuration. Required when\u003cspan pulumi-lang-nodejs=\" cloudProvider \" pulumi-lang-dotnet=\" CloudProvider \" pulumi-lang-go=\" cloudProvider \" pulumi-lang-python=\" cloud_provider \" pulumi-lang-yaml=\" cloudProvider \" pulumi-lang-java=\" cloudProvider \"\u003e cloudProvider \u003c/span\u003eis \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/cloudWorkloadSecurityAgentRule:CloudWorkloadSecurityAgentRule": {
            "description": "Provides a Datadog Cloud Workload Security Agent Rule API resource for agent rules. Deprecated, use\u003cspan pulumi-lang-nodejs=\" datadog.getCsmThreatsAgentRules \" pulumi-lang-dotnet=\" datadog.getCsmThreatsAgentRules \" pulumi-lang-go=\" getCsmThreatsAgentRules \" pulumi-lang-python=\" get_csm_threats_agent_rules \" pulumi-lang-yaml=\" datadog.getCsmThreatsAgentRules \" pulumi-lang-java=\" datadog.getCsmThreatsAgentRules \"\u003e datadog.getCsmThreatsAgentRules \u003c/span\u003eresource instead: https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/csm_threats_agent_rule\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst myAgentRule = new datadog.CloudWorkloadSecurityAgentRule(\"my_agent_rule\", {\n    name: \"my_agent_rule\",\n    description: \"My agent rule\",\n    enabled: true,\n    expression: \"exec.file.name == \\\"java\\\"\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmy_agent_rule = datadog.CloudWorkloadSecurityAgentRule(\"my_agent_rule\",\n    name=\"my_agent_rule\",\n    description=\"My agent rule\",\n    enabled=True,\n    expression=\"exec.file.name == \\\"java\\\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myAgentRule = new Datadog.CloudWorkloadSecurityAgentRule(\"my_agent_rule\", new()\n    {\n        Name = \"my_agent_rule\",\n        Description = \"My agent rule\",\n        Enabled = true,\n        Expression = \"exec.file.name == \\\"java\\\"\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewCloudWorkloadSecurityAgentRule(ctx, \"my_agent_rule\", \u0026datadog.CloudWorkloadSecurityAgentRuleArgs{\n\t\t\tName:        pulumi.String(\"my_agent_rule\"),\n\t\t\tDescription: pulumi.String(\"My agent rule\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tExpression:  pulumi.String(\"exec.file.name == \\\"java\\\"\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CloudWorkloadSecurityAgentRule;\nimport com.pulumi.datadog.CloudWorkloadSecurityAgentRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAgentRule = new CloudWorkloadSecurityAgentRule(\"myAgentRule\", CloudWorkloadSecurityAgentRuleArgs.builder()\n            .name(\"my_agent_rule\")\n            .description(\"My agent rule\")\n            .enabled(true)\n            .expression(\"exec.file.name == \\\"java\\\"\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAgentRule:\n    type: datadog:CloudWorkloadSecurityAgentRule\n    name: my_agent_rule\n    properties:\n      name: my_agent_rule\n      description: My agent rule\n      enabled: true\n      expression: exec.file.name == \"java\"\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nCloud Workload Security Agent rules can be imported using ID, e.g.\n\n```sh\n$ pulumi import datadog:index/cloudWorkloadSecurityAgentRule:CloudWorkloadSecurityAgentRule my_agent_rule m0o-hto-lkb\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "The description of the Agent rule. Defaults to `\"\"`.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Agent rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The SECL expression of the Agent rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Agent rule.\n"
                }
            },
            "required": [
                "expression",
                "name"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "The description of the Agent rule. Defaults to `\"\"`.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Agent rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The SECL expression of the Agent rule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Agent rule.\n",
                    "willReplaceOnChanges": true
                }
            },
            "requiredInputs": [
                "expression",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CloudWorkloadSecurityAgentRule resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "The description of the Agent rule. Defaults to `\"\"`.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the Agent rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "expression": {
                        "type": "string",
                        "description": "The SECL expression of the Agent rule.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Agent rule.\n",
                        "willReplaceOnChanges": true
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/complianceCustomFramework:ComplianceCustomFramework": {
            "description": "Provides a Datadog Compliance Custom Framework resource, which is used to create and manage compliance custom frameworks.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst framework = new datadog.ComplianceCustomFramework(\"framework\", {\n    name: \"my-custom-framework-terraform-2\",\n    version: \"2.0.0\",\n    handle: \"my-custom-framework-terraform-2\",\n    requirements: [\n        {\n            name: \"requirement2\",\n            controls: [\n                {\n                    name: \"control2\",\n                    rulesIds: [\n                        \"def-000-h9o\",\n                        \"def-000-b6i\",\n                        \"def-000-yed\",\n                        \"def-000-h5a\",\n                        \"def-000-aw5\",\n                    ],\n                },\n                {\n                    name: \"control1\",\n                    rulesIds: [\n                        \"def-000-j9v\",\n                        \"def-000-465\",\n                        \"def-000-vq1\",\n                        \"def-000-4hf\",\n                        \"def-000-s2d\",\n                        \"def-000-vnl\",\n                    ],\n                },\n            ],\n        },\n        {\n            name: \"requirement1\",\n            controls: [\n                {\n                    name: \"control2\",\n                    rulesIds: [\n                        \"def-000-wuf\",\n                        \"def-000-7og\",\n                    ],\n                },\n                {\n                    name: \"control5\",\n                    rulesIds: [\n                        \"def-000-mdt\",\n                        \"def-000-zrx\",\n                        \"def-000-z6k\",\n                    ],\n                },\n            ],\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nframework = datadog.ComplianceCustomFramework(\"framework\",\n    name=\"my-custom-framework-terraform-2\",\n    version=\"2.0.0\",\n    handle=\"my-custom-framework-terraform-2\",\n    requirements=[\n        {\n            \"name\": \"requirement2\",\n            \"controls\": [\n                {\n                    \"name\": \"control2\",\n                    \"rules_ids\": [\n                        \"def-000-h9o\",\n                        \"def-000-b6i\",\n                        \"def-000-yed\",\n                        \"def-000-h5a\",\n                        \"def-000-aw5\",\n                    ],\n                },\n                {\n                    \"name\": \"control1\",\n                    \"rules_ids\": [\n                        \"def-000-j9v\",\n                        \"def-000-465\",\n                        \"def-000-vq1\",\n                        \"def-000-4hf\",\n                        \"def-000-s2d\",\n                        \"def-000-vnl\",\n                    ],\n                },\n            ],\n        },\n        {\n            \"name\": \"requirement1\",\n            \"controls\": [\n                {\n                    \"name\": \"control2\",\n                    \"rules_ids\": [\n                        \"def-000-wuf\",\n                        \"def-000-7og\",\n                    ],\n                },\n                {\n                    \"name\": \"control5\",\n                    \"rules_ids\": [\n                        \"def-000-mdt\",\n                        \"def-000-zrx\",\n                        \"def-000-z6k\",\n                    ],\n                },\n            ],\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var framework = new Datadog.ComplianceCustomFramework(\"framework\", new()\n    {\n        Name = \"my-custom-framework-terraform-2\",\n        Version = \"2.0.0\",\n        Handle = \"my-custom-framework-terraform-2\",\n        Requirements = new[]\n        {\n            new Datadog.Inputs.ComplianceCustomFrameworkRequirementArgs\n            {\n                Name = \"requirement2\",\n                Controls = new[]\n                {\n                    new Datadog.Inputs.ComplianceCustomFrameworkRequirementControlArgs\n                    {\n                        Name = \"control2\",\n                        RulesIds = new[]\n                        {\n                            \"def-000-h9o\",\n                            \"def-000-b6i\",\n                            \"def-000-yed\",\n                            \"def-000-h5a\",\n                            \"def-000-aw5\",\n                        },\n                    },\n                    new Datadog.Inputs.ComplianceCustomFrameworkRequirementControlArgs\n                    {\n                        Name = \"control1\",\n                        RulesIds = new[]\n                        {\n                            \"def-000-j9v\",\n                            \"def-000-465\",\n                            \"def-000-vq1\",\n                            \"def-000-4hf\",\n                            \"def-000-s2d\",\n                            \"def-000-vnl\",\n                        },\n                    },\n                },\n            },\n            new Datadog.Inputs.ComplianceCustomFrameworkRequirementArgs\n            {\n                Name = \"requirement1\",\n                Controls = new[]\n                {\n                    new Datadog.Inputs.ComplianceCustomFrameworkRequirementControlArgs\n                    {\n                        Name = \"control2\",\n                        RulesIds = new[]\n                        {\n                            \"def-000-wuf\",\n                            \"def-000-7og\",\n                        },\n                    },\n                    new Datadog.Inputs.ComplianceCustomFrameworkRequirementControlArgs\n                    {\n                        Name = \"control5\",\n                        RulesIds = new[]\n                        {\n                            \"def-000-mdt\",\n                            \"def-000-zrx\",\n                            \"def-000-z6k\",\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewComplianceCustomFramework(ctx, \"framework\", \u0026datadog.ComplianceCustomFrameworkArgs{\n\t\t\tName:    pulumi.String(\"my-custom-framework-terraform-2\"),\n\t\t\tVersion: pulumi.String(\"2.0.0\"),\n\t\t\tHandle:  pulumi.String(\"my-custom-framework-terraform-2\"),\n\t\t\tRequirements: datadog.ComplianceCustomFrameworkRequirementArray{\n\t\t\t\t\u0026datadog.ComplianceCustomFrameworkRequirementArgs{\n\t\t\t\t\tName: pulumi.String(\"requirement2\"),\n\t\t\t\t\tControls: datadog.ComplianceCustomFrameworkRequirementControlArray{\n\t\t\t\t\t\t\u0026datadog.ComplianceCustomFrameworkRequirementControlArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"control2\"),\n\t\t\t\t\t\t\tRulesIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-h9o\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-b6i\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-yed\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-h5a\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-aw5\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026datadog.ComplianceCustomFrameworkRequirementControlArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"control1\"),\n\t\t\t\t\t\t\tRulesIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-j9v\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-465\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-vq1\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-4hf\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-s2d\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-vnl\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.ComplianceCustomFrameworkRequirementArgs{\n\t\t\t\t\tName: pulumi.String(\"requirement1\"),\n\t\t\t\t\tControls: datadog.ComplianceCustomFrameworkRequirementControlArray{\n\t\t\t\t\t\t\u0026datadog.ComplianceCustomFrameworkRequirementControlArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"control2\"),\n\t\t\t\t\t\t\tRulesIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-wuf\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-7og\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026datadog.ComplianceCustomFrameworkRequirementControlArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"control5\"),\n\t\t\t\t\t\t\tRulesIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-mdt\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-zrx\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"def-000-z6k\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ComplianceCustomFramework;\nimport com.pulumi.datadog.ComplianceCustomFrameworkArgs;\nimport com.pulumi.datadog.inputs.ComplianceCustomFrameworkRequirementArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var framework = new ComplianceCustomFramework(\"framework\", ComplianceCustomFrameworkArgs.builder()\n            .name(\"my-custom-framework-terraform-2\")\n            .version(\"2.0.0\")\n            .handle(\"my-custom-framework-terraform-2\")\n            .requirements(            \n                ComplianceCustomFrameworkRequirementArgs.builder()\n                    .name(\"requirement2\")\n                    .controls(                    \n                        ComplianceCustomFrameworkRequirementControlArgs.builder()\n                            .name(\"control2\")\n                            .rulesIds(                            \n                                \"def-000-h9o\",\n                                \"def-000-b6i\",\n                                \"def-000-yed\",\n                                \"def-000-h5a\",\n                                \"def-000-aw5\")\n                            .build(),\n                        ComplianceCustomFrameworkRequirementControlArgs.builder()\n                            .name(\"control1\")\n                            .rulesIds(                            \n                                \"def-000-j9v\",\n                                \"def-000-465\",\n                                \"def-000-vq1\",\n                                \"def-000-4hf\",\n                                \"def-000-s2d\",\n                                \"def-000-vnl\")\n                            .build())\n                    .build(),\n                ComplianceCustomFrameworkRequirementArgs.builder()\n                    .name(\"requirement1\")\n                    .controls(                    \n                        ComplianceCustomFrameworkRequirementControlArgs.builder()\n                            .name(\"control2\")\n                            .rulesIds(                            \n                                \"def-000-wuf\",\n                                \"def-000-7og\")\n                            .build(),\n                        ComplianceCustomFrameworkRequirementControlArgs.builder()\n                            .name(\"control5\")\n                            .rulesIds(                            \n                                \"def-000-mdt\",\n                                \"def-000-zrx\",\n                                \"def-000-z6k\")\n                            .build())\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  framework:\n    type: datadog:ComplianceCustomFramework\n    properties:\n      name: my-custom-framework-terraform-2\n      version: 2.0.0\n      handle: my-custom-framework-terraform-2\n      requirements:\n        - name: requirement2\n          controls:\n            - name: control2\n              rulesIds:\n                - def-000-h9o\n                - def-000-b6i\n                - def-000-yed\n                - def-000-h5a\n                - def-000-aw5\n            - name: control1\n              rulesIds:\n                - def-000-j9v\n                - def-000-465\n                - def-000-vq1\n                - def-000-4hf\n                - def-000-s2d\n                - def-000-vnl\n        - name: requirement1\n          controls:\n            - name: control2\n              rulesIds:\n                - def-000-wuf\n                - def-000-7og\n            - name: control5\n              rulesIds:\n                - def-000-mdt\n                - def-000-zrx\n                - def-000-z6k\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "properties": {
                "handle": {
                    "type": "string",
                    "description": "The framework handle. String length must be at least 1. This field is immutable.\n"
                },
                "iconUrl": {
                    "type": "string",
                    "description": "The URL of the icon representing the framework\n"
                },
                "name": {
                    "type": "string",
                    "description": "The framework name. String length must be at least 1.\n"
                },
                "requirements": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ComplianceCustomFrameworkRequirement:ComplianceCustomFrameworkRequirement"
                    },
                    "description": "The requirements of the framework. Length must be at least 1.\n"
                },
                "version": {
                    "type": "string",
                    "description": "The framework version. String length must be at least 1. This field is immutable.\n"
                }
            },
            "required": [
                "handle",
                "name",
                "requirements",
                "version"
            ],
            "inputProperties": {
                "handle": {
                    "type": "string",
                    "description": "The framework handle. String length must be at least 1. This field is immutable.\n"
                },
                "iconUrl": {
                    "type": "string",
                    "description": "The URL of the icon representing the framework\n"
                },
                "name": {
                    "type": "string",
                    "description": "The framework name. String length must be at least 1.\n"
                },
                "requirements": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/ComplianceCustomFrameworkRequirement:ComplianceCustomFrameworkRequirement"
                    },
                    "description": "The requirements of the framework. Length must be at least 1.\n"
                },
                "version": {
                    "type": "string",
                    "description": "The framework version. String length must be at least 1. This field is immutable.\n"
                }
            },
            "requiredInputs": [
                "handle",
                "name",
                "requirements",
                "version"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ComplianceCustomFramework resources.\n",
                "properties": {
                    "handle": {
                        "type": "string",
                        "description": "The framework handle. String length must be at least 1. This field is immutable.\n"
                    },
                    "iconUrl": {
                        "type": "string",
                        "description": "The URL of the icon representing the framework\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The framework name. String length must be at least 1.\n"
                    },
                    "requirements": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/ComplianceCustomFrameworkRequirement:ComplianceCustomFrameworkRequirement"
                        },
                        "description": "The requirements of the framework. Length must be at least 1.\n"
                    },
                    "version": {
                        "type": "string",
                        "description": "The framework version. String length must be at least 1. This field is immutable.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/complianceResourceEvaluationFilter:ComplianceResourceEvaluationFilter": {
            "description": "Provides a Datadog ComplianceResourceEvaluationFilter resource. This can be used to create and manage a compliance resource evaluation filter.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Manage Datadog compliance resource evaluation filters\nconst basicFilter = new datadog.ComplianceResourceEvaluationFilter(\"basic_filter\", {\n    tags: [\"tag1:val1\"],\n    cloudProvider: \"aws\",\n    resourceId: \"000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Manage Datadog compliance resource evaluation filters\nbasic_filter = datadog.ComplianceResourceEvaluationFilter(\"basic_filter\",\n    tags=[\"tag1:val1\"],\n    cloud_provider=\"aws\",\n    resource_id=\"000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Manage Datadog compliance resource evaluation filters\n    var basicFilter = new Datadog.ComplianceResourceEvaluationFilter(\"basic_filter\", new()\n    {\n        Tags = new[]\n        {\n            \"tag1:val1\",\n        },\n        CloudProvider = \"aws\",\n        ResourceId = \"000000000000\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Manage Datadog compliance resource evaluation filters\n\t\t_, err := datadog.NewComplianceResourceEvaluationFilter(ctx, \"basic_filter\", \u0026datadog.ComplianceResourceEvaluationFilterArgs{\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tag1:val1\"),\n\t\t\t},\n\t\t\tCloudProvider: pulumi.String(\"aws\"),\n\t\t\tResourceId:    pulumi.String(\"000000000000\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ComplianceResourceEvaluationFilter;\nimport com.pulumi.datadog.ComplianceResourceEvaluationFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Manage Datadog compliance resource evaluation filters\n        var basicFilter = new ComplianceResourceEvaluationFilter(\"basicFilter\", ComplianceResourceEvaluationFilterArgs.builder()\n            .tags(\"tag1:val1\")\n            .cloudProvider(\"aws\")\n            .resourceId(\"000000000000\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Manage Datadog compliance resource evaluation filters\n  basicFilter:\n    type: datadog:ComplianceResourceEvaluationFilter\n    name: basic_filter\n    properties:\n      tags:\n        - tag1:val1\n      cloudProvider: aws\n      resourceId: '000000000000'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/complianceResourceEvaluationFilter:ComplianceResourceEvaluationFilter test_filter aws:00000000000000\n```\n\n",
            "properties": {
                "cloudProvider": {
                    "type": "string",
                    "description": "The cloud provider of the filter's targeted resource. Only \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e are considered valid cloud providers."
                },
                "resourceId": {
                    "type": "string",
                    "description": "The ID of the of the filter's targeted resource. Different cloud providers target different resource IDs:\n  - \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e: account ID\n  - \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e: project ID\n  - \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e: subscription ID"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tags to filter misconfiguration detections. Each entry should follow the format: \"key\":\"value\"."
                }
            },
            "required": [
                "cloudProvider",
                "resourceId",
                "tags"
            ],
            "inputProperties": {
                "cloudProvider": {
                    "type": "string",
                    "description": "The cloud provider of the filter's targeted resource. Only \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e are considered valid cloud providers."
                },
                "resourceId": {
                    "type": "string",
                    "description": "The ID of the of the filter's targeted resource. Different cloud providers target different resource IDs:\n  - \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e: account ID\n  - \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e: project ID\n  - \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e: subscription ID"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tags to filter misconfiguration detections. Each entry should follow the format: \"key\":\"value\"."
                }
            },
            "requiredInputs": [
                "cloudProvider",
                "resourceId",
                "tags"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ComplianceResourceEvaluationFilter resources.\n",
                "properties": {
                    "cloudProvider": {
                        "type": "string",
                        "description": "The cloud provider of the filter's targeted resource. Only \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e are considered valid cloud providers."
                    },
                    "resourceId": {
                        "type": "string",
                        "description": "The ID of the of the filter's targeted resource. Different cloud providers target different resource IDs:\n  - \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e: account ID\n  - \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e: project ID\n  - \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e: subscription ID"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of tags to filter misconfiguration detections. Each entry should follow the format: \"key\":\"value\"."
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/costBudget:CostBudget": {
            "description": "Provides a Datadog Cost Budget resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Budget with multiple tag combinations\n// Note: Each unique tag combination needs its own budget_line block\nconst withTags = new datadog.CostBudget(\"with_tags\", {\n    name: \"Multi-Environment Budget\",\n    metricsQuery: \"sum:aws.cost.amortized{*} by {environment}\",\n    startMonth: 202601,\n    endMonth: 202603,\n    budgetLines: [\n        {\n            amounts: {\n                \"202601\": 2000,\n                \"202602\": 2200,\n                \"202603\": 2000,\n            },\n            tagFilters: [{\n                tagKey: \"environment\",\n                tagValue: \"production\",\n            }],\n        },\n        {\n            amounts: {\n                \"202601\": 1000,\n                \"202602\": 1100,\n                \"202603\": 1000,\n            },\n            tagFilters: [{\n                tagKey: \"environment\",\n                tagValue: \"staging\",\n            }],\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Budget with multiple tag combinations\n# Note: Each unique tag combination needs its own budget_line block\nwith_tags = datadog.CostBudget(\"with_tags\",\n    name=\"Multi-Environment Budget\",\n    metrics_query=\"sum:aws.cost.amortized{*} by {environment}\",\n    start_month=202601,\n    end_month=202603,\n    budget_lines=[\n        {\n            \"amounts\": {\n                \"202601\": 2000,\n                \"202602\": 2200,\n                \"202603\": 2000,\n            },\n            \"tag_filters\": [{\n                \"tag_key\": \"environment\",\n                \"tag_value\": \"production\",\n            }],\n        },\n        {\n            \"amounts\": {\n                \"202601\": 1000,\n                \"202602\": 1100,\n                \"202603\": 1000,\n            },\n            \"tag_filters\": [{\n                \"tag_key\": \"environment\",\n                \"tag_value\": \"staging\",\n            }],\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Budget with multiple tag combinations\n    // Note: Each unique tag combination needs its own budget_line block\n    var withTags = new Datadog.CostBudget(\"with_tags\", new()\n    {\n        Name = \"Multi-Environment Budget\",\n        MetricsQuery = \"sum:aws.cost.amortized{*} by {environment}\",\n        StartMonth = 202601,\n        EndMonth = 202603,\n        BudgetLines = new[]\n        {\n            new Datadog.Inputs.CostBudgetBudgetLineArgs\n            {\n                Amounts = \n                {\n                    { \"202601\", 2000 },\n                    { \"202602\", 2200 },\n                    { \"202603\", 2000 },\n                },\n                TagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetBudgetLineTagFilterArgs\n                    {\n                        TagKey = \"environment\",\n                        TagValue = \"production\",\n                    },\n                },\n            },\n            new Datadog.Inputs.CostBudgetBudgetLineArgs\n            {\n                Amounts = \n                {\n                    { \"202601\", 1000 },\n                    { \"202602\", 1100 },\n                    { \"202603\", 1000 },\n                },\n                TagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetBudgetLineTagFilterArgs\n                    {\n                        TagKey = \"environment\",\n                        TagValue = \"staging\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Budget with multiple tag combinations\n\t\t// Note: Each unique tag combination needs its own budget_line block\n\t\t_, err := datadog.NewCostBudget(ctx, \"with_tags\", \u0026datadog.CostBudgetArgs{\n\t\t\tName:         pulumi.String(\"Multi-Environment Budget\"),\n\t\t\tMetricsQuery: pulumi.String(\"sum:aws.cost.amortized{*} by {environment}\"),\n\t\t\tStartMonth:   pulumi.Int(202601),\n\t\t\tEndMonth:     pulumi.Int(202603),\n\t\t\tBudgetLines: datadog.CostBudgetBudgetLineArray{\n\t\t\t\t\u0026datadog.CostBudgetBudgetLineArgs{\n\t\t\t\t\tAmounts: pulumi.Float64Map{\n\t\t\t\t\t\t\"202601\": pulumi.Float64(2000),\n\t\t\t\t\t\t\"202602\": pulumi.Float64(2200),\n\t\t\t\t\t\t\"202603\": pulumi.Float64(2000),\n\t\t\t\t\t},\n\t\t\t\t\tTagFilters: datadog.CostBudgetBudgetLineTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetBudgetLineTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"environment\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"production\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.CostBudgetBudgetLineArgs{\n\t\t\t\t\tAmounts: pulumi.Float64Map{\n\t\t\t\t\t\t\"202601\": pulumi.Float64(1000),\n\t\t\t\t\t\t\"202602\": pulumi.Float64(1100),\n\t\t\t\t\t\t\"202603\": pulumi.Float64(1000),\n\t\t\t\t\t},\n\t\t\t\t\tTagFilters: datadog.CostBudgetBudgetLineTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetBudgetLineTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"environment\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"staging\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CostBudget;\nimport com.pulumi.datadog.CostBudgetArgs;\nimport com.pulumi.datadog.inputs.CostBudgetBudgetLineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Budget with multiple tag combinations\n        // Note: Each unique tag combination needs its own budget_line block\n        var withTags = new CostBudget(\"withTags\", CostBudgetArgs.builder()\n            .name(\"Multi-Environment Budget\")\n            .metricsQuery(\"sum:aws.cost.amortized{*} by {environment}\")\n            .startMonth(202601)\n            .endMonth(202603)\n            .budgetLines(            \n                CostBudgetBudgetLineArgs.builder()\n                    .amounts(Map.ofEntries(\n                        Map.entry(\"202601\", 2000.0),\n                        Map.entry(\"202602\", 2200.0),\n                        Map.entry(\"202603\", 2000.0)\n                    ))\n                    .tagFilters(CostBudgetBudgetLineTagFilterArgs.builder()\n                        .tagKey(\"environment\")\n                        .tagValue(\"production\")\n                        .build())\n                    .build(),\n                CostBudgetBudgetLineArgs.builder()\n                    .amounts(Map.ofEntries(\n                        Map.entry(\"202601\", 1000.0),\n                        Map.entry(\"202602\", 1100.0),\n                        Map.entry(\"202603\", 1000.0)\n                    ))\n                    .tagFilters(CostBudgetBudgetLineTagFilterArgs.builder()\n                        .tagKey(\"environment\")\n                        .tagValue(\"staging\")\n                        .build())\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Budget with multiple tag combinations\n  # Note: Each unique tag combination needs its own budget_line block\n  withTags:\n    type: datadog:CostBudget\n    name: with_tags\n    properties:\n      name: Multi-Environment Budget\n      metricsQuery: sum:aws.cost.amortized{*} by {environment}\n      startMonth: 202601\n      endMonth: 202603\n      budgetLines:\n        - amounts:\n            '202601': 2000\n            '202602': 2200\n            '202603': 2000\n          tagFilters:\n            - tagKey: environment\n              tagValue: production\n        - amounts:\n            '202601': 1000\n            '202602': 1100\n            '202603': 1000\n          tagFilters:\n            - tagKey: environment\n              tagValue: staging\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Hierarchical budget with parent/child tag structure\n// Note: Order in \"by {tag1,tag2}\" determines hierarchy (parent,child)\n// Each unique parent+child combination needs its own budget_line block\nconst hierarchical = new datadog.CostBudget(\"hierarchical\", {\n    name: \"Team-Based AWS Budget\",\n    metricsQuery: \"sum:aws.cost.amortized{*} by {team,environment}\",\n    startMonth: 202601,\n    endMonth: 202603,\n    budgetLines: [\n        {\n            amounts: {\n                \"202601\": 1500,\n                \"202602\": 1600,\n                \"202603\": 1500,\n            },\n            parentTagFilters: [{\n                tagKey: \"team\",\n                tagValue: \"backend\",\n            }],\n            childTagFilters: [{\n                tagKey: \"environment\",\n                tagValue: \"production\",\n            }],\n        },\n        {\n            amounts: {\n                \"202601\": 500,\n                \"202602\": 550,\n                \"202603\": 500,\n            },\n            parentTagFilters: [{\n                tagKey: \"team\",\n                tagValue: \"frontend\",\n            }],\n            childTagFilters: [{\n                tagKey: \"environment\",\n                tagValue: \"staging\",\n            }],\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Hierarchical budget with parent/child tag structure\n# Note: Order in \"by {tag1,tag2}\" determines hierarchy (parent,child)\n# Each unique parent+child combination needs its own budget_line block\nhierarchical = datadog.CostBudget(\"hierarchical\",\n    name=\"Team-Based AWS Budget\",\n    metrics_query=\"sum:aws.cost.amortized{*} by {team,environment}\",\n    start_month=202601,\n    end_month=202603,\n    budget_lines=[\n        {\n            \"amounts\": {\n                \"202601\": 1500,\n                \"202602\": 1600,\n                \"202603\": 1500,\n            },\n            \"parent_tag_filters\": [{\n                \"tag_key\": \"team\",\n                \"tag_value\": \"backend\",\n            }],\n            \"child_tag_filters\": [{\n                \"tag_key\": \"environment\",\n                \"tag_value\": \"production\",\n            }],\n        },\n        {\n            \"amounts\": {\n                \"202601\": 500,\n                \"202602\": 550,\n                \"202603\": 500,\n            },\n            \"parent_tag_filters\": [{\n                \"tag_key\": \"team\",\n                \"tag_value\": \"frontend\",\n            }],\n            \"child_tag_filters\": [{\n                \"tag_key\": \"environment\",\n                \"tag_value\": \"staging\",\n            }],\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Hierarchical budget with parent/child tag structure\n    // Note: Order in \"by {tag1,tag2}\" determines hierarchy (parent,child)\n    // Each unique parent+child combination needs its own budget_line block\n    var hierarchical = new Datadog.CostBudget(\"hierarchical\", new()\n    {\n        Name = \"Team-Based AWS Budget\",\n        MetricsQuery = \"sum:aws.cost.amortized{*} by {team,environment}\",\n        StartMonth = 202601,\n        EndMonth = 202603,\n        BudgetLines = new[]\n        {\n            new Datadog.Inputs.CostBudgetBudgetLineArgs\n            {\n                Amounts = \n                {\n                    { \"202601\", 1500 },\n                    { \"202602\", 1600 },\n                    { \"202603\", 1500 },\n                },\n                ParentTagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetBudgetLineParentTagFilterArgs\n                    {\n                        TagKey = \"team\",\n                        TagValue = \"backend\",\n                    },\n                },\n                ChildTagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetBudgetLineChildTagFilterArgs\n                    {\n                        TagKey = \"environment\",\n                        TagValue = \"production\",\n                    },\n                },\n            },\n            new Datadog.Inputs.CostBudgetBudgetLineArgs\n            {\n                Amounts = \n                {\n                    { \"202601\", 500 },\n                    { \"202602\", 550 },\n                    { \"202603\", 500 },\n                },\n                ParentTagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetBudgetLineParentTagFilterArgs\n                    {\n                        TagKey = \"team\",\n                        TagValue = \"frontend\",\n                    },\n                },\n                ChildTagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetBudgetLineChildTagFilterArgs\n                    {\n                        TagKey = \"environment\",\n                        TagValue = \"staging\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Hierarchical budget with parent/child tag structure\n\t\t// Note: Order in \"by {tag1,tag2}\" determines hierarchy (parent,child)\n\t\t// Each unique parent+child combination needs its own budget_line block\n\t\t_, err := datadog.NewCostBudget(ctx, \"hierarchical\", \u0026datadog.CostBudgetArgs{\n\t\t\tName:         pulumi.String(\"Team-Based AWS Budget\"),\n\t\t\tMetricsQuery: pulumi.String(\"sum:aws.cost.amortized{*} by {team,environment}\"),\n\t\t\tStartMonth:   pulumi.Int(202601),\n\t\t\tEndMonth:     pulumi.Int(202603),\n\t\t\tBudgetLines: datadog.CostBudgetBudgetLineArray{\n\t\t\t\t\u0026datadog.CostBudgetBudgetLineArgs{\n\t\t\t\t\tAmounts: pulumi.Float64Map{\n\t\t\t\t\t\t\"202601\": pulumi.Float64(1500),\n\t\t\t\t\t\t\"202602\": pulumi.Float64(1600),\n\t\t\t\t\t\t\"202603\": pulumi.Float64(1500),\n\t\t\t\t\t},\n\t\t\t\t\tParentTagFilters: datadog.CostBudgetBudgetLineParentTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetBudgetLineParentTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"team\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"backend\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tChildTagFilters: datadog.CostBudgetBudgetLineChildTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetBudgetLineChildTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"environment\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"production\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.CostBudgetBudgetLineArgs{\n\t\t\t\t\tAmounts: pulumi.Float64Map{\n\t\t\t\t\t\t\"202601\": pulumi.Float64(500),\n\t\t\t\t\t\t\"202602\": pulumi.Float64(550),\n\t\t\t\t\t\t\"202603\": pulumi.Float64(500),\n\t\t\t\t\t},\n\t\t\t\t\tParentTagFilters: datadog.CostBudgetBudgetLineParentTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetBudgetLineParentTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"team\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"frontend\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tChildTagFilters: datadog.CostBudgetBudgetLineChildTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetBudgetLineChildTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"environment\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"staging\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CostBudget;\nimport com.pulumi.datadog.CostBudgetArgs;\nimport com.pulumi.datadog.inputs.CostBudgetBudgetLineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Hierarchical budget with parent/child tag structure\n        // Note: Order in \"by {tag1,tag2}\" determines hierarchy (parent,child)\n        // Each unique parent+child combination needs its own budget_line block\n        var hierarchical = new CostBudget(\"hierarchical\", CostBudgetArgs.builder()\n            .name(\"Team-Based AWS Budget\")\n            .metricsQuery(\"sum:aws.cost.amortized{*} by {team,environment}\")\n            .startMonth(202601)\n            .endMonth(202603)\n            .budgetLines(            \n                CostBudgetBudgetLineArgs.builder()\n                    .amounts(Map.ofEntries(\n                        Map.entry(\"202601\", 1500.0),\n                        Map.entry(\"202602\", 1600.0),\n                        Map.entry(\"202603\", 1500.0)\n                    ))\n                    .parentTagFilters(CostBudgetBudgetLineParentTagFilterArgs.builder()\n                        .tagKey(\"team\")\n                        .tagValue(\"backend\")\n                        .build())\n                    .childTagFilters(CostBudgetBudgetLineChildTagFilterArgs.builder()\n                        .tagKey(\"environment\")\n                        .tagValue(\"production\")\n                        .build())\n                    .build(),\n                CostBudgetBudgetLineArgs.builder()\n                    .amounts(Map.ofEntries(\n                        Map.entry(\"202601\", 500.0),\n                        Map.entry(\"202602\", 550.0),\n                        Map.entry(\"202603\", 500.0)\n                    ))\n                    .parentTagFilters(CostBudgetBudgetLineParentTagFilterArgs.builder()\n                        .tagKey(\"team\")\n                        .tagValue(\"frontend\")\n                        .build())\n                    .childTagFilters(CostBudgetBudgetLineChildTagFilterArgs.builder()\n                        .tagKey(\"environment\")\n                        .tagValue(\"staging\")\n                        .build())\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Hierarchical budget with parent/child tag structure\n  # Note: Order in \"by {tag1,tag2}\" determines hierarchy (parent,child)\n  # Each unique parent+child combination needs its own budget_line block\n  hierarchical:\n    type: datadog:CostBudget\n    properties:\n      name: Team-Based AWS Budget\n      metricsQuery: sum:aws.cost.amortized{*} by {team,environment}\n      startMonth: 202601\n      endMonth: 202603\n      budgetLines:\n        - amounts:\n            '202601': 1500\n            '202602': 1600\n            '202603': 1500\n          parentTagFilters:\n            - tagKey: team\n              tagValue: backend\n          childTagFilters:\n            - tagKey: environment\n              tagValue: production\n        - amounts:\n            '202601': 500\n            '202602': 550\n            '202603': 500\n          parentTagFilters:\n            - tagKey: team\n              tagValue: frontend\n          childTagFilters:\n            - tagKey: environment\n              tagValue: staging\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Legacy entries with tag filters (deprecated - use budget_line instead)\n// Note: Each unique tag combination must have entries for all months\nconst legacyWithTags = new datadog.CostBudget(\"legacy_with_tags\", {\n    name: \"Production Budget (Legacy)\",\n    metricsQuery: \"sum:aws.cost.amortized{*} by {environment}\",\n    startMonth: 202601,\n    endMonth: 202603,\n    entries: [\n        {\n            month: 202601,\n            amount: 2000,\n            tagFilters: [{\n                tagKey: \"environment\",\n                tagValue: \"production\",\n            }],\n        },\n        {\n            month: 202602,\n            amount: 2200,\n            tagFilters: [{\n                tagKey: \"environment\",\n                tagValue: \"production\",\n            }],\n        },\n        {\n            month: 202603,\n            amount: 2000,\n            tagFilters: [{\n                tagKey: \"environment\",\n                tagValue: \"production\",\n            }],\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Legacy entries with tag filters (deprecated - use budget_line instead)\n# Note: Each unique tag combination must have entries for all months\nlegacy_with_tags = datadog.CostBudget(\"legacy_with_tags\",\n    name=\"Production Budget (Legacy)\",\n    metrics_query=\"sum:aws.cost.amortized{*} by {environment}\",\n    start_month=202601,\n    end_month=202603,\n    entries=[\n        {\n            \"month\": 202601,\n            \"amount\": 2000,\n            \"tag_filters\": [{\n                \"tag_key\": \"environment\",\n                \"tag_value\": \"production\",\n            }],\n        },\n        {\n            \"month\": 202602,\n            \"amount\": 2200,\n            \"tag_filters\": [{\n                \"tag_key\": \"environment\",\n                \"tag_value\": \"production\",\n            }],\n        },\n        {\n            \"month\": 202603,\n            \"amount\": 2000,\n            \"tag_filters\": [{\n                \"tag_key\": \"environment\",\n                \"tag_value\": \"production\",\n            }],\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Legacy entries with tag filters (deprecated - use budget_line instead)\n    // Note: Each unique tag combination must have entries for all months\n    var legacyWithTags = new Datadog.CostBudget(\"legacy_with_tags\", new()\n    {\n        Name = \"Production Budget (Legacy)\",\n        MetricsQuery = \"sum:aws.cost.amortized{*} by {environment}\",\n        StartMonth = 202601,\n        EndMonth = 202603,\n        Entries = new[]\n        {\n            new Datadog.Inputs.CostBudgetEntryArgs\n            {\n                Month = 202601,\n                Amount = 2000,\n                TagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetEntryTagFilterArgs\n                    {\n                        TagKey = \"environment\",\n                        TagValue = \"production\",\n                    },\n                },\n            },\n            new Datadog.Inputs.CostBudgetEntryArgs\n            {\n                Month = 202602,\n                Amount = 2200,\n                TagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetEntryTagFilterArgs\n                    {\n                        TagKey = \"environment\",\n                        TagValue = \"production\",\n                    },\n                },\n            },\n            new Datadog.Inputs.CostBudgetEntryArgs\n            {\n                Month = 202603,\n                Amount = 2000,\n                TagFilters = new[]\n                {\n                    new Datadog.Inputs.CostBudgetEntryTagFilterArgs\n                    {\n                        TagKey = \"environment\",\n                        TagValue = \"production\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Legacy entries with tag filters (deprecated - use budget_line instead)\n\t\t// Note: Each unique tag combination must have entries for all months\n\t\t_, err := datadog.NewCostBudget(ctx, \"legacy_with_tags\", \u0026datadog.CostBudgetArgs{\n\t\t\tName:         pulumi.String(\"Production Budget (Legacy)\"),\n\t\t\tMetricsQuery: pulumi.String(\"sum:aws.cost.amortized{*} by {environment}\"),\n\t\t\tStartMonth:   pulumi.Int(202601),\n\t\t\tEndMonth:     pulumi.Int(202603),\n\t\t\tEntries: datadog.CostBudgetEntryArray{\n\t\t\t\t\u0026datadog.CostBudgetEntryArgs{\n\t\t\t\t\tMonth:  pulumi.Int(202601),\n\t\t\t\t\tAmount: pulumi.Float64(2000),\n\t\t\t\t\tTagFilters: datadog.CostBudgetEntryTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetEntryTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"environment\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"production\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.CostBudgetEntryArgs{\n\t\t\t\t\tMonth:  pulumi.Int(202602),\n\t\t\t\t\tAmount: pulumi.Float64(2200),\n\t\t\t\t\tTagFilters: datadog.CostBudgetEntryTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetEntryTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"environment\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"production\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.CostBudgetEntryArgs{\n\t\t\t\t\tMonth:  pulumi.Int(202603),\n\t\t\t\t\tAmount: pulumi.Float64(2000),\n\t\t\t\t\tTagFilters: datadog.CostBudgetEntryTagFilterArray{\n\t\t\t\t\t\t\u0026datadog.CostBudgetEntryTagFilterArgs{\n\t\t\t\t\t\t\tTagKey:   pulumi.String(\"environment\"),\n\t\t\t\t\t\t\tTagValue: pulumi.String(\"production\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CostBudget;\nimport com.pulumi.datadog.CostBudgetArgs;\nimport com.pulumi.datadog.inputs.CostBudgetEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Legacy entries with tag filters (deprecated - use budget_line instead)\n        // Note: Each unique tag combination must have entries for all months\n        var legacyWithTags = new CostBudget(\"legacyWithTags\", CostBudgetArgs.builder()\n            .name(\"Production Budget (Legacy)\")\n            .metricsQuery(\"sum:aws.cost.amortized{*} by {environment}\")\n            .startMonth(202601)\n            .endMonth(202603)\n            .entries(            \n                CostBudgetEntryArgs.builder()\n                    .month(202601)\n                    .amount(2000.0)\n                    .tagFilters(CostBudgetEntryTagFilterArgs.builder()\n                        .tagKey(\"environment\")\n                        .tagValue(\"production\")\n                        .build())\n                    .build(),\n                CostBudgetEntryArgs.builder()\n                    .month(202602)\n                    .amount(2200.0)\n                    .tagFilters(CostBudgetEntryTagFilterArgs.builder()\n                        .tagKey(\"environment\")\n                        .tagValue(\"production\")\n                        .build())\n                    .build(),\n                CostBudgetEntryArgs.builder()\n                    .month(202603)\n                    .amount(2000.0)\n                    .tagFilters(CostBudgetEntryTagFilterArgs.builder()\n                        .tagKey(\"environment\")\n                        .tagValue(\"production\")\n                        .build())\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Legacy entries with tag filters (deprecated - use budget_line instead)\n  # Note: Each unique tag combination must have entries for all months\n  legacyWithTags:\n    type: datadog:CostBudget\n    name: legacy_with_tags\n    properties:\n      name: Production Budget (Legacy)\n      metricsQuery: sum:aws.cost.amortized{*} by {environment}\n      startMonth: 202601\n      endMonth: 202603\n      entries:\n        - month: 202601\n          amount: 2000\n          tagFilters:\n            - tagKey: environment\n              tagValue: production\n        - month: 202602\n          amount: 2200\n          tagFilters:\n            - tagKey: environment\n              tagValue: production\n        - month: 202603\n          amount: 2000\n          tagFilters:\n            - tagKey: environment\n              tagValue: production\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nCost budgets can be imported using their ID, e.g.\n\n```sh\n$ pulumi import datadog:index/costBudget:CostBudget example a1b2c3d4-e5f6-7890-abcd-ef1234567890\n```\n\n",
            "properties": {
                "budgetId": {
                    "type": "string",
                    "description": "The ID of the budget.\n"
                },
                "budgetLines": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CostBudgetBudgetLine:CostBudgetBudgetLine"
                    },
                    "description": "Budget lines that group monthly amounts by tag combination. Use this instead of \u003cspan pulumi-lang-nodejs=\"`entries`\" pulumi-lang-dotnet=\"`Entries`\" pulumi-lang-go=\"`entries`\" pulumi-lang-python=\"`entries`\" pulumi-lang-yaml=\"`entries`\" pulumi-lang-java=\"`entries`\"\u003e`entries`\u003c/span\u003e for a more convenient schema. **Note:** The order of budget*line blocks does not matter.\n"
                },
                "endMonth": {
                    "type": "integer",
                    "description": "The month when the budget ends (YYYYMM).\n"
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CostBudgetEntry:CostBudgetEntry"
                    },
                    "description": "The entries of the budget. **Note:** You must provide entries for all months in the budget period. For hierarchical budgets, each unique tag combination must have entries for all months.\n",
                    "deprecationMessage": "Use\u003cspan pulumi-lang-nodejs=\" budgetLine \" pulumi-lang-dotnet=\" BudgetLine \" pulumi-lang-go=\" budgetLine \" pulumi-lang-python=\" budget_line \" pulumi-lang-yaml=\" budgetLine \" pulumi-lang-java=\" budgetLine \"\u003e budgetLine \u003c/span\u003einstead. This field will be removed in a future version."
                },
                "metricsQuery": {
                    "type": "string",
                    "description": "The cost query used to track against the budget. **Note:** For hierarchical budgets using `by {tag1,tag2}`, the order of tags determines the UI hierarchy (parent, child).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the budget.\n"
                },
                "startMonth": {
                    "type": "integer",
                    "description": "The month when the budget starts (YYYYMM).\n"
                },
                "totalAmount": {
                    "type": "number",
                    "description": "The sum of all budget entries' amounts.\n"
                }
            },
            "required": [
                "endMonth",
                "budgetId",
                "metricsQuery",
                "name",
                "startMonth",
                "totalAmount"
            ],
            "inputProperties": {
                "budgetId": {
                    "type": "string",
                    "description": "The ID of the budget.\n"
                },
                "budgetLines": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CostBudgetBudgetLine:CostBudgetBudgetLine"
                    },
                    "description": "Budget lines that group monthly amounts by tag combination. Use this instead of \u003cspan pulumi-lang-nodejs=\"`entries`\" pulumi-lang-dotnet=\"`Entries`\" pulumi-lang-go=\"`entries`\" pulumi-lang-python=\"`entries`\" pulumi-lang-yaml=\"`entries`\" pulumi-lang-java=\"`entries`\"\u003e`entries`\u003c/span\u003e for a more convenient schema. **Note:** The order of budget*line blocks does not matter.\n"
                },
                "endMonth": {
                    "type": "integer",
                    "description": "The month when the budget ends (YYYYMM).\n"
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CostBudgetEntry:CostBudgetEntry"
                    },
                    "description": "The entries of the budget. **Note:** You must provide entries for all months in the budget period. For hierarchical budgets, each unique tag combination must have entries for all months.\n",
                    "deprecationMessage": "Use\u003cspan pulumi-lang-nodejs=\" budgetLine \" pulumi-lang-dotnet=\" BudgetLine \" pulumi-lang-go=\" budgetLine \" pulumi-lang-python=\" budget_line \" pulumi-lang-yaml=\" budgetLine \" pulumi-lang-java=\" budgetLine \"\u003e budgetLine \u003c/span\u003einstead. This field will be removed in a future version."
                },
                "metricsQuery": {
                    "type": "string",
                    "description": "The cost query used to track against the budget. **Note:** For hierarchical budgets using `by {tag1,tag2}`, the order of tags determines the UI hierarchy (parent, child).\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the budget.\n"
                },
                "startMonth": {
                    "type": "integer",
                    "description": "The month when the budget starts (YYYYMM).\n"
                }
            },
            "requiredInputs": [
                "endMonth",
                "metricsQuery",
                "name",
                "startMonth"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CostBudget resources.\n",
                "properties": {
                    "budgetId": {
                        "type": "string",
                        "description": "The ID of the budget.\n"
                    },
                    "budgetLines": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/CostBudgetBudgetLine:CostBudgetBudgetLine"
                        },
                        "description": "Budget lines that group monthly amounts by tag combination. Use this instead of \u003cspan pulumi-lang-nodejs=\"`entries`\" pulumi-lang-dotnet=\"`Entries`\" pulumi-lang-go=\"`entries`\" pulumi-lang-python=\"`entries`\" pulumi-lang-yaml=\"`entries`\" pulumi-lang-java=\"`entries`\"\u003e`entries`\u003c/span\u003e for a more convenient schema. **Note:** The order of budget*line blocks does not matter.\n"
                    },
                    "endMonth": {
                        "type": "integer",
                        "description": "The month when the budget ends (YYYYMM).\n"
                    },
                    "entries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/CostBudgetEntry:CostBudgetEntry"
                        },
                        "description": "The entries of the budget. **Note:** You must provide entries for all months in the budget period. For hierarchical budgets, each unique tag combination must have entries for all months.\n",
                        "deprecationMessage": "Use\u003cspan pulumi-lang-nodejs=\" budgetLine \" pulumi-lang-dotnet=\" BudgetLine \" pulumi-lang-go=\" budgetLine \" pulumi-lang-python=\" budget_line \" pulumi-lang-yaml=\" budgetLine \" pulumi-lang-java=\" budgetLine \"\u003e budgetLine \u003c/span\u003einstead. This field will be removed in a future version."
                    },
                    "metricsQuery": {
                        "type": "string",
                        "description": "The cost query used to track against the budget. **Note:** For hierarchical budgets using `by {tag1,tag2}`, the order of tags determines the UI hierarchy (parent, child).\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the budget.\n"
                    },
                    "startMonth": {
                        "type": "integer",
                        "description": "The month when the budget starts (YYYYMM).\n"
                    },
                    "totalAmount": {
                        "type": "number",
                        "description": "The sum of all budget entries' amounts.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/csmThreatsAgentRule:CsmThreatsAgentRule": {
            "description": "Provides a Datadog Workload Protection (CSM Threats) Agent Rule API resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst myAgentRule = new datadog.CsmThreatsAgentRule(\"my_agent_rule\", {\n    actions: [{\n        hash: [{}],\n        set: [{\n            name: \"updated_security_actions\",\n            field: \"exec.file.path\",\n            append: false,\n            scope: \"process\",\n        }],\n    }],\n    name: \"my_agent_rule\",\n    enabled: true,\n    description: \"This is a rule\",\n    expression: \"open.file.name == \\\"etc/shadow/password\\\"\",\n    policyId: \"jm4-lwh-8cs\",\n    productTags: [\"compliance_framework:PCI-DSS\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmy_agent_rule = datadog.CsmThreatsAgentRule(\"my_agent_rule\",\n    actions=[{\n        \"hash\": [{}],\n        \"set\": [{\n            \"name\": \"updated_security_actions\",\n            \"field\": \"exec.file.path\",\n            \"append\": False,\n            \"scope\": \"process\",\n        }],\n    }],\n    name=\"my_agent_rule\",\n    enabled=True,\n    description=\"This is a rule\",\n    expression=\"open.file.name == \\\"etc/shadow/password\\\"\",\n    policy_id=\"jm4-lwh-8cs\",\n    product_tags=[\"compliance_framework:PCI-DSS\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myAgentRule = new Datadog.CsmThreatsAgentRule(\"my_agent_rule\", new()\n    {\n        Actions = new[]\n        {\n            new Datadog.Inputs.CsmThreatsAgentRuleActionArgs\n            {\n                Hash = new[]\n                {\n                    null,\n                },\n                Set = new[]\n                {\n                    \n                    {\n                        { \"name\", \"updated_security_actions\" },\n                        { \"field\", \"exec.file.path\" },\n                        { \"append\", false },\n                        { \"scope\", \"process\" },\n                    },\n                },\n            },\n        },\n        Name = \"my_agent_rule\",\n        Enabled = true,\n        Description = \"This is a rule\",\n        Expression = \"open.file.name == \\\"etc/shadow/password\\\"\",\n        PolicyId = \"jm4-lwh-8cs\",\n        ProductTags = new[]\n        {\n            \"compliance_framework:PCI-DSS\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewCsmThreatsAgentRule(ctx, \"my_agent_rule\", \u0026datadog.CsmThreatsAgentRuleArgs{\n\t\t\tActions: datadog.CsmThreatsAgentRuleActionArray{\n\t\t\t\t\u0026datadog.CsmThreatsAgentRuleActionArgs{\n\t\t\t\t\tHash: datadog.CsmThreatsAgentRuleActionHashArgs{\n\t\t\t\t\t\tmap[string]interface{}{},\n\t\t\t\t\t},\n\t\t\t\t\tSet: datadog.CsmThreatsAgentRuleActionSetArgs{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"name\":   \"updated_security_actions\",\n\t\t\t\t\t\t\t\"field\":  \"exec.file.path\",\n\t\t\t\t\t\t\t\"append\": false,\n\t\t\t\t\t\t\t\"scope\":  \"process\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tName:        pulumi.String(\"my_agent_rule\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tDescription: pulumi.String(\"This is a rule\"),\n\t\t\tExpression:  pulumi.String(\"open.file.name == \\\"etc/shadow/password\\\"\"),\n\t\t\tPolicyId:    pulumi.String(\"jm4-lwh-8cs\"),\n\t\t\tProductTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"compliance_framework:PCI-DSS\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CsmThreatsAgentRule;\nimport com.pulumi.datadog.CsmThreatsAgentRuleArgs;\nimport com.pulumi.datadog.inputs.CsmThreatsAgentRuleActionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAgentRule = new CsmThreatsAgentRule(\"myAgentRule\", CsmThreatsAgentRuleArgs.builder()\n            .actions(CsmThreatsAgentRuleActionArgs.builder()\n                .hash(CsmThreatsAgentRuleActionHashArgs.builder()\n                    .build())\n                .set(CsmThreatsAgentRuleActionSetArgs.builder()\n                    .name(\"updated_security_actions\")\n                    .field(\"exec.file.path\")\n                    .append(false)\n                    .scope(\"process\")\n                    .build())\n                .build())\n            .name(\"my_agent_rule\")\n            .enabled(true)\n            .description(\"This is a rule\")\n            .expression(\"open.file.name == \\\"etc/shadow/password\\\"\")\n            .policyId(\"jm4-lwh-8cs\")\n            .productTags(\"compliance_framework:PCI-DSS\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAgentRule:\n    type: datadog:CsmThreatsAgentRule\n    name: my_agent_rule\n    properties:\n      actions:\n        - hash:\n            - {}\n          set:\n            - name: updated_security_actions\n              field: exec.file.path\n              append: false\n              scope: process\n      name: my_agent_rule\n      enabled: true\n      description: This is a rule\n      expression: open.file.name == \"etc/shadow/password\"\n      policyId: jm4-lwh-8cs\n      productTags:\n        - compliance_framework:PCI-DSS\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nCSM Agent Rules can be imported using ID. For example:\n\n```sh\n$ pulumi import datadog:index/csmThreatsAgentRule:CsmThreatsAgentRule my_agent_rule m0o-hto-lkb\n```\n\nCSM Agent Rules can also be imported using the policy ID and the rule ID. For example:\n\n```sh\n$ pulumi import datadog:index/csmThreatsAgentRule:CsmThreatsAgentRule my_agent_rule jm4-lwh-8cs:m0o-hto-lkb\n```\n\n",
            "properties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CsmThreatsAgentRuleAction:CsmThreatsAgentRuleAction"
                    },
                    "description": "The list of actions the rule can perform\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description for the Agent rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the Agent rule is enabled. Must not be used without policy_id.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The SECL expression of the Agent rule\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Agent rule.\n"
                },
                "policyId": {
                    "type": "string",
                    "description": "The ID of the agent policy in which the rule is saved\n"
                },
                "productTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of product tags associated with the rule\n"
                },
                "silent": {
                    "type": "boolean",
                    "description": "Indicates whether the Agent rule is silent.\n"
                }
            },
            "required": [
                "description",
                "enabled",
                "expression",
                "name",
                "productTags",
                "silent"
            ],
            "inputProperties": {
                "actions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CsmThreatsAgentRuleAction:CsmThreatsAgentRuleAction"
                    },
                    "description": "The list of actions the rule can perform\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description for the Agent rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the Agent rule is enabled. Must not be used without policy_id.\n"
                },
                "expression": {
                    "type": "string",
                    "description": "The SECL expression of the Agent rule\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Agent rule.\n"
                },
                "policyId": {
                    "type": "string",
                    "description": "The ID of the agent policy in which the rule is saved\n"
                },
                "productTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of product tags associated with the rule\n"
                },
                "silent": {
                    "type": "boolean",
                    "description": "Indicates whether the Agent rule is silent.\n"
                }
            },
            "requiredInputs": [
                "expression",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CsmThreatsAgentRule resources.\n",
                "properties": {
                    "actions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/CsmThreatsAgentRuleAction:CsmThreatsAgentRuleAction"
                        },
                        "description": "The list of actions the rule can perform\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A description for the Agent rule.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether the Agent rule is enabled. Must not be used without policy_id.\n"
                    },
                    "expression": {
                        "type": "string",
                        "description": "The SECL expression of the Agent rule\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Agent rule.\n"
                    },
                    "policyId": {
                        "type": "string",
                        "description": "The ID of the agent policy in which the rule is saved\n"
                    },
                    "productTags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The list of product tags associated with the rule\n"
                    },
                    "silent": {
                        "type": "boolean",
                        "description": "Indicates whether the Agent rule is silent.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/csmThreatsPolicy:CsmThreatsPolicy": {
            "description": "Provides a Datadog Workload Protection (CSM Threats) policy API resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst myPolicy = new datadog.CsmThreatsPolicy(\"my_policy\", {\n    name: \"my_policy\",\n    description: \"My policy\",\n    enabled: true,\n    hostTagsLists: [\n        [\n            \"env:prod\",\n            \"team:backend\",\n        ],\n        [\n            \"env:prod\",\n            \"team:frontend\",\n        ],\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmy_policy = datadog.CsmThreatsPolicy(\"my_policy\",\n    name=\"my_policy\",\n    description=\"My policy\",\n    enabled=True,\n    host_tags_lists=[\n        [\n            \"env:prod\",\n            \"team:backend\",\n        ],\n        [\n            \"env:prod\",\n            \"team:frontend\",\n        ],\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPolicy = new Datadog.CsmThreatsPolicy(\"my_policy\", new()\n    {\n        Name = \"my_policy\",\n        Description = \"My policy\",\n        Enabled = true,\n        HostTagsLists = new[]\n        {\n            new[]\n            {\n                \"env:prod\",\n                \"team:backend\",\n            },\n            new[]\n            {\n                \"env:prod\",\n                \"team:frontend\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewCsmThreatsPolicy(ctx, \"my_policy\", \u0026datadog.CsmThreatsPolicyArgs{\n\t\t\tName:        pulumi.String(\"my_policy\"),\n\t\t\tDescription: pulumi.String(\"My policy\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tHostTagsLists: pulumi.StringArrayArray{\n\t\t\t\tpulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"env:prod\"),\n\t\t\t\t\tpulumi.String(\"team:backend\"),\n\t\t\t\t},\n\t\t\t\tpulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"env:prod\"),\n\t\t\t\t\tpulumi.String(\"team:frontend\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CsmThreatsPolicy;\nimport com.pulumi.datadog.CsmThreatsPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPolicy = new CsmThreatsPolicy(\"myPolicy\", CsmThreatsPolicyArgs.builder()\n            .name(\"my_policy\")\n            .description(\"My policy\")\n            .enabled(true)\n            .hostTagsLists(            \n                                \n                    \"env:prod\",\n                    \"team:backend\",\n                                \n                    \"env:prod\",\n                    \"team:frontend\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPolicy:\n    type: datadog:CsmThreatsPolicy\n    name: my_policy\n    properties:\n      name: my_policy\n      description: My policy\n      enabled: true\n      hostTagsLists:\n        - - env:prod\n          - team:backend\n        - - env:prod\n          - team:frontend\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nCSM Policies can be imported using IDs. For example:\n\n```sh\n$ pulumi import datadog:index/csmThreatsPolicy:CsmThreatsPolicy my_policy jm4-lwh-8cs\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description for the policy.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the policy is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "hostTagsLists": {
                    "type": "array",
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Host tags that define where the policy is deployed. Inner values are ANDed, outer arrays are ORed.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the policy.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Host tags that define where the policy is deployed. Deprecated, use host*tags*lists instead.\n"
                }
            },
            "required": [
                "description",
                "enabled",
                "name",
                "tags"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "A description for the policy.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the policy is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "hostTagsLists": {
                    "type": "array",
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": "Host tags that define where the policy is deployed. Inner values are ANDed, outer arrays are ORed.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the policy.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Host tags that define where the policy is deployed. Deprecated, use host*tags*lists instead.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CsmThreatsPolicy resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "A description for the policy.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether the policy is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "hostTagsLists": {
                        "type": "array",
                        "items": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "description": "Host tags that define where the policy is deployed. Inner values are ANDed, outer arrays are ORed.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the policy.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Host tags that define where the policy is deployed. Deprecated, use host*tags*lists instead.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/customAllocationRule:CustomAllocationRule": {
            "description": "Provides a Datadog Custom Allocation Rule resource. Custom allocation rules allow you to allocate cloud costs based on tags and filters.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new datadog_custom_allocation_rule resource\nconst myAllocationRule = new datadog.CustomAllocationRule(\"my_allocation_rule\", {\n    costsToAllocates: [{\n        condition: \"is\",\n        tag: \"aws_product\",\n        value: \"ec2\",\n    }],\n    enabled: true,\n    providernames: [\"aws\"],\n    ruleName: \"my-allocation-rule\",\n    strategy: [{\n        allocatedByTagKeys: [\"team\"],\n        basedOnCosts: [{\n            condition: \"is\",\n            tag: \"env\",\n            value: \"prod\",\n        }],\n        granularity: \"daily\",\n        method: \"even\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new datadog_custom_allocation_rule resource\nmy_allocation_rule = datadog.CustomAllocationRule(\"my_allocation_rule\",\n    costs_to_allocates=[{\n        \"condition\": \"is\",\n        \"tag\": \"aws_product\",\n        \"value\": \"ec2\",\n    }],\n    enabled=True,\n    providernames=[\"aws\"],\n    rule_name=\"my-allocation-rule\",\n    strategy=[{\n        \"allocatedByTagKeys\": [\"team\"],\n        \"basedOnCosts\": [{\n            \"condition\": \"is\",\n            \"tag\": \"env\",\n            \"value\": \"prod\",\n        }],\n        \"granularity\": \"daily\",\n        \"method\": \"even\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new datadog_custom_allocation_rule resource\n    var myAllocationRule = new Datadog.CustomAllocationRule(\"my_allocation_rule\", new()\n    {\n        CostsToAllocates = new[]\n        {\n            new Datadog.Inputs.CustomAllocationRuleCostsToAllocateArgs\n            {\n                Condition = \"is\",\n                Tag = \"aws_product\",\n                Value = \"ec2\",\n            },\n        },\n        Enabled = true,\n        Providernames = new[]\n        {\n            \"aws\",\n        },\n        RuleName = \"my-allocation-rule\",\n        Strategy = new[]\n        {\n            \n            {\n                { \"allocatedByTagKeys\", new[]\n                {\n                    \"team\",\n                } },\n                { \"basedOnCosts\", new[]\n                {\n                    \n                    {\n                        { \"condition\", \"is\" },\n                        { \"tag\", \"env\" },\n                        { \"value\", \"prod\" },\n                    },\n                } },\n                { \"granularity\", \"daily\" },\n                { \"method\", \"even\" },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new datadog_custom_allocation_rule resource\n\t\t_, err := datadog.NewCustomAllocationRule(ctx, \"my_allocation_rule\", \u0026datadog.CustomAllocationRuleArgs{\n\t\t\tCostsToAllocates: datadog.CustomAllocationRuleCostsToAllocateArray{\n\t\t\t\t\u0026datadog.CustomAllocationRuleCostsToAllocateArgs{\n\t\t\t\t\tCondition: pulumi.String(\"is\"),\n\t\t\t\t\tTag:       pulumi.String(\"aws_product\"),\n\t\t\t\t\tValue:     pulumi.String(\"ec2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tProvidernames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"aws\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"my-allocation-rule\"),\n\t\t\tStrategy: datadog.CustomAllocationRuleStrategyArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"allocatedByTagKeys\": []string{\n\t\t\t\t\t\t\"team\",\n\t\t\t\t\t},\n\t\t\t\t\t\"basedOnCosts\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"condition\": \"is\",\n\t\t\t\t\t\t\t\"tag\":       \"env\",\n\t\t\t\t\t\t\t\"value\":     \"prod\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t\"granularity\": \"daily\",\n\t\t\t\t\t\"method\":      \"even\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CustomAllocationRule;\nimport com.pulumi.datadog.CustomAllocationRuleArgs;\nimport com.pulumi.datadog.inputs.CustomAllocationRuleCostsToAllocateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new datadog_custom_allocation_rule resource\n        var myAllocationRule = new CustomAllocationRule(\"myAllocationRule\", CustomAllocationRuleArgs.builder()\n            .costsToAllocates(CustomAllocationRuleCostsToAllocateArgs.builder()\n                .condition(\"is\")\n                .tag(\"aws_product\")\n                .value(\"ec2\")\n                .build())\n            .enabled(true)\n            .providernames(\"aws\")\n            .ruleName(\"my-allocation-rule\")\n            .strategy(CustomAllocationRuleStrategyArgs.builder()\n                .allocatedByTagKeys(\"team\")\n                .basedOnCosts(CustomAllocationRuleStrategyBasedOnCostArgs.builder()\n                    .condition(\"is\")\n                    .tag(\"env\")\n                    .value(\"prod\")\n                    .build())\n                .granularity(\"daily\")\n                .method(\"even\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new datadog_custom_allocation_rule resource\n  myAllocationRule:\n    type: datadog:CustomAllocationRule\n    name: my_allocation_rule\n    properties:\n      costsToAllocates:\n        - condition: is\n          tag: aws_product\n          value: ec2\n      enabled: true\n      providernames:\n        - aws\n      ruleName: my-allocation-rule\n      strategy:\n        - allocatedByTagKeys:\n            - team\n          basedOnCosts:\n            - condition: is\n              tag: env\n              value: prod\n          granularity: daily\n          method: even\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/customAllocationRule:CustomAllocationRule new_list \u003crule_id\u003e\n```\n\n",
            "properties": {
                "costsToAllocates": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CustomAllocationRuleCostsToAllocate:CustomAllocationRuleCostsToAllocate"
                    }
                },
                "created": {
                    "type": "string",
                    "description": "The timestamp (in ISO 8601 format) when the rule was created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the custom allocation rule is enabled.\n"
                },
                "lastModifiedUserUuid": {
                    "type": "string",
                    "description": "The UUID of the user who last modified the rule.\n"
                },
                "orderId": {
                    "type": "integer",
                    "description": "The order of the rule in the list of custom allocation rules. This field is read-only. Use the \u003cspan pulumi-lang-nodejs=\"`datadog.CustomAllocationRules`\" pulumi-lang-dotnet=\"`datadog.CustomAllocationRules`\" pulumi-lang-go=\"`CustomAllocationRules`\" pulumi-lang-python=\"`CustomAllocationRules`\" pulumi-lang-yaml=\"`datadog.CustomAllocationRules`\" pulumi-lang-java=\"`datadog.CustomAllocationRules`\"\u003e`datadog.CustomAllocationRules`\u003c/span\u003e resource to manage rule order.\n"
                },
                "providernames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of cloud providers the rule applies to. Valid values include \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                },
                "rejected": {
                    "type": "boolean",
                    "description": "Whether the rule was rejected by the API during creation due to validation errors. This field is read-only.\n"
                },
                "ruleName": {
                    "type": "string",
                    "description": "The name of the custom allocation rule. This field is immutable - changing it will force replacement of the resource.\n"
                },
                "strategy": {
                    "$ref": "#/types/datadog:index/CustomAllocationRuleStrategy:CustomAllocationRuleStrategy"
                },
                "updated": {
                    "type": "string",
                    "description": "The timestamp (in ISO 8601 format) when the rule was last updated.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "The version number of the rule. This increments each time the rule is updated.\n"
                }
            },
            "required": [
                "created",
                "enabled",
                "lastModifiedUserUuid",
                "orderId",
                "providernames",
                "rejected",
                "ruleName",
                "updated",
                "version"
            ],
            "inputProperties": {
                "costsToAllocates": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/CustomAllocationRuleCostsToAllocate:CustomAllocationRuleCostsToAllocate"
                    }
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the custom allocation rule is enabled.\n"
                },
                "providernames": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of cloud providers the rule applies to. Valid values include \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                },
                "ruleName": {
                    "type": "string",
                    "description": "The name of the custom allocation rule. This field is immutable - changing it will force replacement of the resource.\n"
                },
                "strategy": {
                    "$ref": "#/types/datadog:index/CustomAllocationRuleStrategy:CustomAllocationRuleStrategy"
                }
            },
            "requiredInputs": [
                "enabled",
                "providernames",
                "ruleName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CustomAllocationRule resources.\n",
                "properties": {
                    "costsToAllocates": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/CustomAllocationRuleCostsToAllocate:CustomAllocationRuleCostsToAllocate"
                        }
                    },
                    "created": {
                        "type": "string",
                        "description": "The timestamp (in ISO 8601 format) when the rule was created.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the custom allocation rule is enabled.\n"
                    },
                    "lastModifiedUserUuid": {
                        "type": "string",
                        "description": "The UUID of the user who last modified the rule.\n"
                    },
                    "orderId": {
                        "type": "integer",
                        "description": "The order of the rule in the list of custom allocation rules. This field is read-only. Use the \u003cspan pulumi-lang-nodejs=\"`datadog.CustomAllocationRules`\" pulumi-lang-dotnet=\"`datadog.CustomAllocationRules`\" pulumi-lang-go=\"`CustomAllocationRules`\" pulumi-lang-python=\"`CustomAllocationRules`\" pulumi-lang-yaml=\"`datadog.CustomAllocationRules`\" pulumi-lang-java=\"`datadog.CustomAllocationRules`\"\u003e`datadog.CustomAllocationRules`\u003c/span\u003e resource to manage rule order.\n"
                    },
                    "providernames": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of cloud providers the rule applies to. Valid values include \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"
                    },
                    "rejected": {
                        "type": "boolean",
                        "description": "Whether the rule was rejected by the API during creation due to validation errors. This field is read-only.\n"
                    },
                    "ruleName": {
                        "type": "string",
                        "description": "The name of the custom allocation rule. This field is immutable - changing it will force replacement of the resource.\n"
                    },
                    "strategy": {
                        "$ref": "#/types/datadog:index/CustomAllocationRuleStrategy:CustomAllocationRuleStrategy"
                    },
                    "updated": {
                        "type": "string",
                        "description": "The timestamp (in ISO 8601 format) when the rule was last updated.\n"
                    },
                    "version": {
                        "type": "integer",
                        "description": "The version number of the rule. This increments each time the rule is updated.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/customAllocationRules:CustomAllocationRules": {
            "description": "Provides a Datadog Custom Allocation Rule Order API resource. This can be used to manage the order of Datadog Custom Allocation Rules.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst rule1 = new datadog.CustomAllocationRule(\"rule_1\", {\n    costsToAllocates: [{\n        condition: \"is\",\n        tag: \"aws_product\",\n        value: \"AmazonEC2\",\n    }],\n    enabled: true,\n    providernames: [\"aws\"],\n    ruleName: \"my-custom-rule-1\",\n    strategy: [{\n        allocatedByTagKeys: [\"team\"],\n        basedOnCosts: [{\n            condition: \"is\",\n            tag: \"aws_product\",\n            value: \"AmazonEC2\",\n        }],\n        method: \"even\",\n    }],\n});\nconst rule2 = new datadog.CustomAllocationRule(\"rule_2\", {\n    costsToAllocates: [{\n        condition: \"is\",\n        tag: \"aws_product\",\n        value: \"AmazonS3\",\n    }],\n    enabled: true,\n    providernames: [\"aws\"],\n    ruleName: \"my-custom-rule-2\",\n    strategy: [{\n        allocatedByTagKeys: [\"team\"],\n        basedOnCosts: [{\n            condition: \"is\",\n            tag: \"aws_product\",\n            value: \"AmazonS3\",\n        }],\n        method: \"even\",\n    }],\n});\nconst rule3 = new datadog.CustomAllocationRule(\"rule_3\", {\n    costsToAllocates: [{\n        condition: \"is\",\n        tag: \"aws_product\",\n        value: \"AmazonRDS\",\n    }],\n    enabled: true,\n    providernames: [\"aws\"],\n    ruleName: \"my-custom-rule-3\",\n    strategy: [{\n        allocatedByTagKeys: [\"team\"],\n        basedOnCosts: [{\n            condition: \"is\",\n            tag: \"aws_product\",\n            value: \"AmazonRDS\",\n        }],\n        method: \"even\",\n    }],\n});\n// Example 1: Preserve mode (default) - allows unmanaged rules to exist at the end\n// This will preserve any existing rules created outside of Terraform as long as they are at the end\nconst preserveOrder = new datadog.CustomAllocationRules(\"preserve_order\", {ruleIds: [\n    rule1.id,\n    rule2.id,\n    rule3.id,\n]});\n// Example 2: Override mode - deletes all unmanaged rules and maintains strict order\n// This will delete any rules not defined in Terraform and enforce the exact order specified\nconst overrideOrder = new datadog.CustomAllocationRules(\"override_order\", {\n    overrideUiDefinedResources: true,\n    ruleIds: [\n        rule1.id,\n        rule2.id,\n        rule3.id,\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nrule1 = datadog.CustomAllocationRule(\"rule_1\",\n    costs_to_allocates=[{\n        \"condition\": \"is\",\n        \"tag\": \"aws_product\",\n        \"value\": \"AmazonEC2\",\n    }],\n    enabled=True,\n    providernames=[\"aws\"],\n    rule_name=\"my-custom-rule-1\",\n    strategy=[{\n        \"allocatedByTagKeys\": [\"team\"],\n        \"basedOnCosts\": [{\n            \"condition\": \"is\",\n            \"tag\": \"aws_product\",\n            \"value\": \"AmazonEC2\",\n        }],\n        \"method\": \"even\",\n    }])\nrule2 = datadog.CustomAllocationRule(\"rule_2\",\n    costs_to_allocates=[{\n        \"condition\": \"is\",\n        \"tag\": \"aws_product\",\n        \"value\": \"AmazonS3\",\n    }],\n    enabled=True,\n    providernames=[\"aws\"],\n    rule_name=\"my-custom-rule-2\",\n    strategy=[{\n        \"allocatedByTagKeys\": [\"team\"],\n        \"basedOnCosts\": [{\n            \"condition\": \"is\",\n            \"tag\": \"aws_product\",\n            \"value\": \"AmazonS3\",\n        }],\n        \"method\": \"even\",\n    }])\nrule3 = datadog.CustomAllocationRule(\"rule_3\",\n    costs_to_allocates=[{\n        \"condition\": \"is\",\n        \"tag\": \"aws_product\",\n        \"value\": \"AmazonRDS\",\n    }],\n    enabled=True,\n    providernames=[\"aws\"],\n    rule_name=\"my-custom-rule-3\",\n    strategy=[{\n        \"allocatedByTagKeys\": [\"team\"],\n        \"basedOnCosts\": [{\n            \"condition\": \"is\",\n            \"tag\": \"aws_product\",\n            \"value\": \"AmazonRDS\",\n        }],\n        \"method\": \"even\",\n    }])\n# Example 1: Preserve mode (default) - allows unmanaged rules to exist at the end\n# This will preserve any existing rules created outside of Terraform as long as they are at the end\npreserve_order = datadog.CustomAllocationRules(\"preserve_order\", rule_ids=[\n    rule1.id,\n    rule2.id,\n    rule3.id,\n])\n# Example 2: Override mode - deletes all unmanaged rules and maintains strict order\n# This will delete any rules not defined in Terraform and enforce the exact order specified\noverride_order = datadog.CustomAllocationRules(\"override_order\",\n    override_ui_defined_resources=True,\n    rule_ids=[\n        rule1.id,\n        rule2.id,\n        rule3.id,\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var rule1 = new Datadog.CustomAllocationRule(\"rule_1\", new()\n    {\n        CostsToAllocates = new[]\n        {\n            new Datadog.Inputs.CustomAllocationRuleCostsToAllocateArgs\n            {\n                Condition = \"is\",\n                Tag = \"aws_product\",\n                Value = \"AmazonEC2\",\n            },\n        },\n        Enabled = true,\n        Providernames = new[]\n        {\n            \"aws\",\n        },\n        RuleName = \"my-custom-rule-1\",\n        Strategy = new[]\n        {\n            \n            {\n                { \"allocatedByTagKeys\", new[]\n                {\n                    \"team\",\n                } },\n                { \"basedOnCosts\", new[]\n                {\n                    \n                    {\n                        { \"condition\", \"is\" },\n                        { \"tag\", \"aws_product\" },\n                        { \"value\", \"AmazonEC2\" },\n                    },\n                } },\n                { \"method\", \"even\" },\n            },\n        },\n    });\n\n    var rule2 = new Datadog.CustomAllocationRule(\"rule_2\", new()\n    {\n        CostsToAllocates = new[]\n        {\n            new Datadog.Inputs.CustomAllocationRuleCostsToAllocateArgs\n            {\n                Condition = \"is\",\n                Tag = \"aws_product\",\n                Value = \"AmazonS3\",\n            },\n        },\n        Enabled = true,\n        Providernames = new[]\n        {\n            \"aws\",\n        },\n        RuleName = \"my-custom-rule-2\",\n        Strategy = new[]\n        {\n            \n            {\n                { \"allocatedByTagKeys\", new[]\n                {\n                    \"team\",\n                } },\n                { \"basedOnCosts\", new[]\n                {\n                    \n                    {\n                        { \"condition\", \"is\" },\n                        { \"tag\", \"aws_product\" },\n                        { \"value\", \"AmazonS3\" },\n                    },\n                } },\n                { \"method\", \"even\" },\n            },\n        },\n    });\n\n    var rule3 = new Datadog.CustomAllocationRule(\"rule_3\", new()\n    {\n        CostsToAllocates = new[]\n        {\n            new Datadog.Inputs.CustomAllocationRuleCostsToAllocateArgs\n            {\n                Condition = \"is\",\n                Tag = \"aws_product\",\n                Value = \"AmazonRDS\",\n            },\n        },\n        Enabled = true,\n        Providernames = new[]\n        {\n            \"aws\",\n        },\n        RuleName = \"my-custom-rule-3\",\n        Strategy = new[]\n        {\n            \n            {\n                { \"allocatedByTagKeys\", new[]\n                {\n                    \"team\",\n                } },\n                { \"basedOnCosts\", new[]\n                {\n                    \n                    {\n                        { \"condition\", \"is\" },\n                        { \"tag\", \"aws_product\" },\n                        { \"value\", \"AmazonRDS\" },\n                    },\n                } },\n                { \"method\", \"even\" },\n            },\n        },\n    });\n\n    // Example 1: Preserve mode (default) - allows unmanaged rules to exist at the end\n    // This will preserve any existing rules created outside of Terraform as long as they are at the end\n    var preserveOrder = new Datadog.CustomAllocationRules(\"preserve_order\", new()\n    {\n        RuleIds = new[]\n        {\n            rule1.Id,\n            rule2.Id,\n            rule3.Id,\n        },\n    });\n\n    // Example 2: Override mode - deletes all unmanaged rules and maintains strict order\n    // This will delete any rules not defined in Terraform and enforce the exact order specified\n    var overrideOrder = new Datadog.CustomAllocationRules(\"override_order\", new()\n    {\n        OverrideUiDefinedResources = true,\n        RuleIds = new[]\n        {\n            rule1.Id,\n            rule2.Id,\n            rule3.Id,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\trule1, err := datadog.NewCustomAllocationRule(ctx, \"rule_1\", \u0026datadog.CustomAllocationRuleArgs{\n\t\t\tCostsToAllocates: datadog.CustomAllocationRuleCostsToAllocateArray{\n\t\t\t\t\u0026datadog.CustomAllocationRuleCostsToAllocateArgs{\n\t\t\t\t\tCondition: pulumi.String(\"is\"),\n\t\t\t\t\tTag:       pulumi.String(\"aws_product\"),\n\t\t\t\t\tValue:     pulumi.String(\"AmazonEC2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tProvidernames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"aws\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"my-custom-rule-1\"),\n\t\t\tStrategy: datadog.CustomAllocationRuleStrategyArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"allocatedByTagKeys\": []string{\n\t\t\t\t\t\t\"team\",\n\t\t\t\t\t},\n\t\t\t\t\t\"basedOnCosts\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"condition\": \"is\",\n\t\t\t\t\t\t\t\"tag\":       \"aws_product\",\n\t\t\t\t\t\t\t\"value\":     \"AmazonEC2\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t\"method\": \"even\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trule2, err := datadog.NewCustomAllocationRule(ctx, \"rule_2\", \u0026datadog.CustomAllocationRuleArgs{\n\t\t\tCostsToAllocates: datadog.CustomAllocationRuleCostsToAllocateArray{\n\t\t\t\t\u0026datadog.CustomAllocationRuleCostsToAllocateArgs{\n\t\t\t\t\tCondition: pulumi.String(\"is\"),\n\t\t\t\t\tTag:       pulumi.String(\"aws_product\"),\n\t\t\t\t\tValue:     pulumi.String(\"AmazonS3\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tProvidernames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"aws\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"my-custom-rule-2\"),\n\t\t\tStrategy: datadog.CustomAllocationRuleStrategyArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"allocatedByTagKeys\": []string{\n\t\t\t\t\t\t\"team\",\n\t\t\t\t\t},\n\t\t\t\t\t\"basedOnCosts\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"condition\": \"is\",\n\t\t\t\t\t\t\t\"tag\":       \"aws_product\",\n\t\t\t\t\t\t\t\"value\":     \"AmazonS3\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t\"method\": \"even\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\trule3, err := datadog.NewCustomAllocationRule(ctx, \"rule_3\", \u0026datadog.CustomAllocationRuleArgs{\n\t\t\tCostsToAllocates: datadog.CustomAllocationRuleCostsToAllocateArray{\n\t\t\t\t\u0026datadog.CustomAllocationRuleCostsToAllocateArgs{\n\t\t\t\t\tCondition: pulumi.String(\"is\"),\n\t\t\t\t\tTag:       pulumi.String(\"aws_product\"),\n\t\t\t\t\tValue:     pulumi.String(\"AmazonRDS\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tProvidernames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"aws\"),\n\t\t\t},\n\t\t\tRuleName: pulumi.String(\"my-custom-rule-3\"),\n\t\t\tStrategy: datadog.CustomAllocationRuleStrategyArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"allocatedByTagKeys\": []string{\n\t\t\t\t\t\t\"team\",\n\t\t\t\t\t},\n\t\t\t\t\t\"basedOnCosts\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"condition\": \"is\",\n\t\t\t\t\t\t\t\"tag\":       \"aws_product\",\n\t\t\t\t\t\t\t\"value\":     \"AmazonRDS\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t\"method\": \"even\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Example 1: Preserve mode (default) - allows unmanaged rules to exist at the end\n\t\t// This will preserve any existing rules created outside of Terraform as long as they are at the end\n\t\t_, err = datadog.NewCustomAllocationRules(ctx, \"preserve_order\", \u0026datadog.CustomAllocationRulesArgs{\n\t\t\tRuleIds: pulumi.StringArray{\n\t\t\t\trule1.ID(),\n\t\t\t\trule2.ID(),\n\t\t\t\trule3.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Example 2: Override mode - deletes all unmanaged rules and maintains strict order\n\t\t// This will delete any rules not defined in Terraform and enforce the exact order specified\n\t\t_, err = datadog.NewCustomAllocationRules(ctx, \"override_order\", \u0026datadog.CustomAllocationRulesArgs{\n\t\t\tOverrideUiDefinedResources: pulumi.Bool(true),\n\t\t\tRuleIds: pulumi.StringArray{\n\t\t\t\trule1.ID(),\n\t\t\t\trule2.ID(),\n\t\t\t\trule3.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.CustomAllocationRule;\nimport com.pulumi.datadog.CustomAllocationRuleArgs;\nimport com.pulumi.datadog.inputs.CustomAllocationRuleCostsToAllocateArgs;\nimport com.pulumi.datadog.CustomAllocationRules;\nimport com.pulumi.datadog.CustomAllocationRulesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var rule1 = new CustomAllocationRule(\"rule1\", CustomAllocationRuleArgs.builder()\n            .costsToAllocates(CustomAllocationRuleCostsToAllocateArgs.builder()\n                .condition(\"is\")\n                .tag(\"aws_product\")\n                .value(\"AmazonEC2\")\n                .build())\n            .enabled(true)\n            .providernames(\"aws\")\n            .ruleName(\"my-custom-rule-1\")\n            .strategy(CustomAllocationRuleStrategyArgs.builder()\n                .allocatedByTagKeys(\"team\")\n                .basedOnCosts(CustomAllocationRuleStrategyBasedOnCostArgs.builder()\n                    .condition(\"is\")\n                    .tag(\"aws_product\")\n                    .value(\"AmazonEC2\")\n                    .build())\n                .method(\"even\")\n                .build())\n            .build());\n\n        var rule2 = new CustomAllocationRule(\"rule2\", CustomAllocationRuleArgs.builder()\n            .costsToAllocates(CustomAllocationRuleCostsToAllocateArgs.builder()\n                .condition(\"is\")\n                .tag(\"aws_product\")\n                .value(\"AmazonS3\")\n                .build())\n            .enabled(true)\n            .providernames(\"aws\")\n            .ruleName(\"my-custom-rule-2\")\n            .strategy(CustomAllocationRuleStrategyArgs.builder()\n                .allocatedByTagKeys(\"team\")\n                .basedOnCosts(CustomAllocationRuleStrategyBasedOnCostArgs.builder()\n                    .condition(\"is\")\n                    .tag(\"aws_product\")\n                    .value(\"AmazonS3\")\n                    .build())\n                .method(\"even\")\n                .build())\n            .build());\n\n        var rule3 = new CustomAllocationRule(\"rule3\", CustomAllocationRuleArgs.builder()\n            .costsToAllocates(CustomAllocationRuleCostsToAllocateArgs.builder()\n                .condition(\"is\")\n                .tag(\"aws_product\")\n                .value(\"AmazonRDS\")\n                .build())\n            .enabled(true)\n            .providernames(\"aws\")\n            .ruleName(\"my-custom-rule-3\")\n            .strategy(CustomAllocationRuleStrategyArgs.builder()\n                .allocatedByTagKeys(\"team\")\n                .basedOnCosts(CustomAllocationRuleStrategyBasedOnCostArgs.builder()\n                    .condition(\"is\")\n                    .tag(\"aws_product\")\n                    .value(\"AmazonRDS\")\n                    .build())\n                .method(\"even\")\n                .build())\n            .build());\n\n        // Example 1: Preserve mode (default) - allows unmanaged rules to exist at the end\n        // This will preserve any existing rules created outside of Terraform as long as they are at the end\n        var preserveOrder = new CustomAllocationRules(\"preserveOrder\", CustomAllocationRulesArgs.builder()\n            .ruleIds(            \n                rule1.id(),\n                rule2.id(),\n                rule3.id())\n            .build());\n\n        // Example 2: Override mode - deletes all unmanaged rules and maintains strict order\n        // This will delete any rules not defined in Terraform and enforce the exact order specified\n        var overrideOrder = new CustomAllocationRules(\"overrideOrder\", CustomAllocationRulesArgs.builder()\n            .overrideUiDefinedResources(true)\n            .ruleIds(            \n                rule1.id(),\n                rule2.id(),\n                rule3.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  rule1:\n    type: datadog:CustomAllocationRule\n    name: rule_1\n    properties:\n      costsToAllocates:\n        - condition: is\n          tag: aws_product\n          value: AmazonEC2\n      enabled: true\n      providernames:\n        - aws\n      ruleName: my-custom-rule-1\n      strategy:\n        - allocatedByTagKeys:\n            - team\n          basedOnCosts:\n            - condition: is\n              tag: aws_product\n              value: AmazonEC2\n          method: even\n  rule2:\n    type: datadog:CustomAllocationRule\n    name: rule_2\n    properties:\n      costsToAllocates:\n        - condition: is\n          tag: aws_product\n          value: AmazonS3\n      enabled: true\n      providernames:\n        - aws\n      ruleName: my-custom-rule-2\n      strategy:\n        - allocatedByTagKeys:\n            - team\n          basedOnCosts:\n            - condition: is\n              tag: aws_product\n              value: AmazonS3\n          method: even\n  rule3:\n    type: datadog:CustomAllocationRule\n    name: rule_3\n    properties:\n      costsToAllocates:\n        - condition: is\n          tag: aws_product\n          value: AmazonRDS\n      enabled: true\n      providernames:\n        - aws\n      ruleName: my-custom-rule-3\n      strategy:\n        - allocatedByTagKeys:\n            - team\n          basedOnCosts:\n            - condition: is\n              tag: aws_product\n              value: AmazonRDS\n          method: even\n  # Example 1: Preserve mode (default) - allows unmanaged rules to exist at the end\n  # This will preserve any existing rules created outside of Terraform as long as they are at the end\n  preserveOrder:\n    type: datadog:CustomAllocationRules\n    name: preserve_order\n    properties:\n      ruleIds:\n        - ${rule1.id}\n        - ${rule2.id}\n        - ${rule3.id}\n  # Example 2: Override mode - deletes all unmanaged rules and maintains strict order\n  # This will delete any rules not defined in Terraform and enforce the exact order specified\n  overrideOrder:\n    type: datadog:CustomAllocationRules\n    name: override_order\n    properties:\n      overrideUiDefinedResources: true\n      ruleIds:\n        - ${rule1.id}\n        - ${rule2.id}\n        - ${rule3.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/customAllocationRules:CustomAllocationRules order order\n```\n\n",
            "properties": {
                "overrideUiDefinedResources": {
                    "type": "boolean",
                    "description": "Whether to override UI-defined rules. When set to true, any rules created via the UI that are not defined in Terraform will be deleted and Terraform will be used as the source of truth for rules and their ordering. When set to false, any rules created via the UI that are at the end of order will be kept but will be warned, otherwise an error will be thrown in pulumi preview phase. Default is false\n"
                },
                "ruleIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of Custom Allocation Rule IDs, in order. Rules are executed in the order specified in this list. Comes from the \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e field on a \u003cspan pulumi-lang-nodejs=\"`datadog.CustomAllocationRule`\" pulumi-lang-dotnet=\"`datadog.CustomAllocationRule`\" pulumi-lang-go=\"`CustomAllocationRule`\" pulumi-lang-python=\"`CustomAllocationRule`\" pulumi-lang-yaml=\"`datadog.CustomAllocationRule`\" pulumi-lang-java=\"`datadog.CustomAllocationRule`\"\u003e`datadog.CustomAllocationRule`\u003c/span\u003e resource.\n"
                }
            },
            "required": [
                "ruleIds"
            ],
            "inputProperties": {
                "overrideUiDefinedResources": {
                    "type": "boolean",
                    "description": "Whether to override UI-defined rules. When set to true, any rules created via the UI that are not defined in Terraform will be deleted and Terraform will be used as the source of truth for rules and their ordering. When set to false, any rules created via the UI that are at the end of order will be kept but will be warned, otherwise an error will be thrown in pulumi preview phase. Default is false\n"
                },
                "ruleIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of Custom Allocation Rule IDs, in order. Rules are executed in the order specified in this list. Comes from the \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e field on a \u003cspan pulumi-lang-nodejs=\"`datadog.CustomAllocationRule`\" pulumi-lang-dotnet=\"`datadog.CustomAllocationRule`\" pulumi-lang-go=\"`CustomAllocationRule`\" pulumi-lang-python=\"`CustomAllocationRule`\" pulumi-lang-yaml=\"`datadog.CustomAllocationRule`\" pulumi-lang-java=\"`datadog.CustomAllocationRule`\"\u003e`datadog.CustomAllocationRule`\u003c/span\u003e resource.\n"
                }
            },
            "requiredInputs": [
                "ruleIds"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering CustomAllocationRules resources.\n",
                "properties": {
                    "overrideUiDefinedResources": {
                        "type": "boolean",
                        "description": "Whether to override UI-defined rules. When set to true, any rules created via the UI that are not defined in Terraform will be deleted and Terraform will be used as the source of truth for rules and their ordering. When set to false, any rules created via the UI that are at the end of order will be kept but will be warned, otherwise an error will be thrown in pulumi preview phase. Default is false\n"
                    },
                    "ruleIds": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The list of Custom Allocation Rule IDs, in order. Rules are executed in the order specified in this list. Comes from the \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e field on a \u003cspan pulumi-lang-nodejs=\"`datadog.CustomAllocationRule`\" pulumi-lang-dotnet=\"`datadog.CustomAllocationRule`\" pulumi-lang-go=\"`CustomAllocationRule`\" pulumi-lang-python=\"`CustomAllocationRule`\" pulumi-lang-yaml=\"`datadog.CustomAllocationRule`\" pulumi-lang-java=\"`datadog.CustomAllocationRule`\"\u003e`datadog.CustomAllocationRule`\u003c/span\u003e resource.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/dashboard:Dashboard": {
            "description": "Provides a Datadog dashboard resource. This can be used to create and manage Datadog dashboards.\n\n!\u003e The \u003cspan pulumi-lang-nodejs=\"`isReadOnly`\" pulumi-lang-dotnet=\"`IsReadOnly`\" pulumi-lang-go=\"`isReadOnly`\" pulumi-lang-python=\"`is_read_only`\" pulumi-lang-yaml=\"`isReadOnly`\" pulumi-lang-java=\"`isReadOnly`\"\u003e`isReadOnly`\u003c/span\u003e field is deprecated and non-functional. Use \u003cspan pulumi-lang-nodejs=\"`restrictedRoles`\" pulumi-lang-dotnet=\"`RestrictedRoles`\" pulumi-lang-go=\"`restrictedRoles`\" pulumi-lang-python=\"`restricted_roles`\" pulumi-lang-yaml=\"`restrictedRoles`\" pulumi-lang-java=\"`restrictedRoles`\"\u003e`restrictedRoles`\u003c/span\u003e instead to define which roles are required to edit the dashboard.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Example Ordered Layout\nconst orderedDashboard = new datadog.Dashboard(\"ordered_dashboard\", {\n    title: \"Ordered Layout Dashboard\",\n    description: \"Created using the Datadog provider in Pulumi\",\n    layoutType: \"ordered\",\n    widgets: [\n        {\n            alertGraphDefinition: {\n                alertId: \"895605\",\n                vizType: \"timeseries\",\n                title: \"Widget Title\",\n                liveSpan: \"1h\",\n            },\n        },\n        {\n            alertValueDefinition: {\n                alertId: \"895605\",\n                precision: 3,\n                unit: \"b\",\n                textAlign: \"center\",\n                title: \"Widget Title\",\n            },\n        },\n        {\n            alertValueDefinition: {\n                alertId: \"895605\",\n                precision: 3,\n                unit: \"b\",\n                textAlign: \"center\",\n                title: \"Widget Title\",\n            },\n        },\n        {\n            changeDefinition: {\n                requests: [{\n                    q: \"avg:system.load.1{env:staging} by {account}\",\n                    changeType: \"absolute\",\n                    compareTo: \"week_before\",\n                    increaseGood: true,\n                    orderBy: \"name\",\n                    orderDir: \"desc\",\n                    showPresent: true,\n                }],\n                title: \"Widget Title\",\n                liveSpan: \"1h\",\n            },\n        },\n        {\n            distributionDefinition: {\n                requests: [{\n                    q: \"avg:system.load.1{env:staging} by {account}\",\n                    style: {\n                        palette: \"warm\",\n                    },\n                }],\n                title: \"Widget Title\",\n                liveSpan: \"1h\",\n            },\n        },\n        {\n            checkStatusDefinition: {\n                check: \"aws.ecs.agent_connected\",\n                grouping: \"cluster\",\n                groupBies: [\n                    \"account\",\n                    \"cluster\",\n                ],\n                tags: [\n                    \"account:demo\",\n                    \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\",\n                ],\n                title: \"Widget Title\",\n                liveSpan: \"1h\",\n            },\n        },\n        {\n            heatmapDefinition: {\n                requests: [{\n                    q: \"avg:system.load.1{env:staging} by {account}\",\n                    style: {\n                        palette: \"warm\",\n                    },\n                }],\n                yaxis: {\n                    min: \"1\",\n                    max: \"2\",\n                    includeZero: true,\n                    scale: \"sqrt\",\n                },\n                title: \"Widget Title\",\n                liveSpan: \"1h\",\n            },\n        },\n        {\n            hostmapDefinition: {\n                request: {\n                    fills: [{\n                        q: \"avg:system.load.1{*} by {host}\",\n                    }],\n                    sizes: [{\n                        q: \"avg:memcache.uptime{*} by {host}\",\n                    }],\n                },\n                nodeType: \"container\",\n                groups: [\n                    \"host\",\n                    \"region\",\n                ],\n                noGroupHosts: true,\n                noMetricHosts: true,\n                scopes: [\n                    \"region:us-east-1\",\n                    \"aws_account:727006795293\",\n                ],\n                style: {\n                    palette: \"yellow_to_green\",\n                    paletteFlip: true,\n                    fillMin: \"10\",\n                    fillMax: \"20\",\n                },\n                title: \"Widget Title\",\n            },\n        },\n        {\n            noteDefinition: {\n                content: \"note text\",\n                backgroundColor: \"pink\",\n                fontSize: \"14\",\n                textAlign: \"center\",\n                showTick: true,\n                tickEdge: \"left\",\n                tickPos: \"50%\",\n            },\n        },\n        {\n            queryValueDefinition: {\n                requests: [{\n                    q: \"avg:system.load.1{env:staging} by {account}\",\n                    aggregator: \"sum\",\n                    conditionalFormats: [\n                        {\n                            comparator: \"\u003c\",\n                            value: 2,\n                            palette: \"white_on_green\",\n                        },\n                        {\n                            comparator: \"\u003e\",\n                            value: 2.2,\n                            palette: \"white_on_red\",\n                        },\n                    ],\n                }],\n                autoscale: true,\n                customUnit: \"xx\",\n                precision: 4,\n                textAlign: \"right\",\n                title: \"Widget Title\",\n                liveSpan: \"1h\",\n            },\n        },\n        {\n            queryTableDefinition: {\n                requests: [{\n                    q: \"avg:system.load.1{env:staging} by {account}\",\n                    aggregator: \"sum\",\n                    limit: 10,\n                    conditionalFormats: [\n                        {\n                            comparator: \"\u003c\",\n                            value: 2,\n                            palette: \"white_on_green\",\n                        },\n                        {\n                            comparator: \"\u003e\",\n                            value: 2.2,\n                            palette: \"white_on_red\",\n                        },\n                    ],\n                }],\n                title: \"Widget Title\",\n                liveSpan: \"1h\",\n            },\n        },\n        {\n            scatterplotDefinition: {\n                request: {\n                    xes: [{\n                        q: \"avg:system.cpu.user{*} by {service, account}\",\n                        aggregator: \"max\",\n                    }],\n                    ys: [{\n                        q: \"avg:system.mem.used{*} by {service, account}\",\n                        aggregator: \"min\",\n                    }],\n                },\n                colorByGroups: [\n                    \"account\",\n                    \"apm-role-group\",\n                ],\n                xaxis: {\n                    includeZero: true,\n                    label: \"x\",\n                    min: \"1\",\n                    max: \"2000\",\n                    scale: \"pow\",\n                },\n                yaxis: {\n                    includeZero: false,\n                    label: \"y\",\n                    min: \"5\",\n                    max: \"2222\",\n                    scale: \"log\",\n                },\n                title: \"Widget Title\",\n                liveSpan: \"1h\",\n            },\n        },\n        {\n            servicemapDefinition: {\n                service: \"master-db\",\n                filters: [\n                    \"env:prod\",\n                    \"datacenter:dc1\",\n                ],\n                title: \"env: prod, datacenter:dc1, service: master-db\",\n                titleSize: \"16\",\n                titleAlign: \"left\",\n            },\n        },\n        {\n            timeseriesDefinition: {\n                requests: [\n                    {\n                        q: \"avg:system.cpu.user{app:general} by {env}\",\n                        displayType: \"line\",\n                        style: {\n                            palette: \"warm\",\n                            lineType: \"dashed\",\n                            lineWidth: \"thin\",\n                        },\n                        metadatas: [{\n                            expression: \"avg:system.cpu.user{app:general} by {env}\",\n                            aliasName: \"Alpha\",\n                        }],\n                    },\n                    {\n                        logQuery: {\n                            index: \"mcnulty\",\n                            computeQuery: {\n                                aggregation: \"avg\",\n                                facet: \"@duration\",\n                                interval: 5000,\n                            },\n                            searchQuery: \"status:info\",\n                            groupBies: [{\n                                facet: \"host\",\n                                limit: 10,\n                                sortQuery: {\n                                    aggregation: \"avg\",\n                                    order: \"desc\",\n                                    facet: \"@duration\",\n                                },\n                            }],\n                        },\n                        displayType: \"area\",\n                    },\n                    {\n                        apmQuery: {\n                            index: \"apm-search\",\n                            computeQuery: {\n                                aggregation: \"avg\",\n                                facet: \"@duration\",\n                                interval: 5000,\n                            },\n                            searchQuery: \"type:web\",\n                            groupBies: [{\n                                facet: \"resource_name\",\n                                limit: 50,\n                                sortQuery: {\n                                    aggregation: \"avg\",\n                                    order: \"desc\",\n                                    facet: \"@string_query.interval\",\n                                },\n                            }],\n                        },\n                        displayType: \"bars\",\n                    },\n                    {\n                        processQuery: {\n                            metric: \"process.stat.cpu.total_pct\",\n                            searchBy: \"error\",\n                            filterBies: [\"active\"],\n                            limit: 50,\n                        },\n                        displayType: \"area\",\n                    },\n                ],\n                markers: [\n                    {\n                        displayType: \"error dashed\",\n                        label: \" z=6 \",\n                        value: \"y = 4\",\n                    },\n                    {\n                        displayType: \"ok solid\",\n                        value: \"10 \u003c y \u003c 999\",\n                        label: \" x=8 \",\n                    },\n                ],\n                title: \"Widget Title\",\n                showLegend: true,\n                legendSize: \"2\",\n                liveSpan: \"1h\",\n                events: [\n                    {\n                        q: \"sources:test tags:1\",\n                    },\n                    {\n                        q: \"sources:test tags:2\",\n                    },\n                ],\n                yaxis: {\n                    scale: \"log\",\n                    includeZero: false,\n                    max: \"100\",\n                },\n            },\n        },\n        {\n            toplistDefinition: {\n                requests: [{\n                    q: \"avg:system.cpu.user{app:general} by {env}\",\n                    conditionalFormats: [\n                        {\n                            comparator: \"\u003c\",\n                            value: 2,\n                            palette: \"white_on_green\",\n                        },\n                        {\n                            comparator: \"\u003e\",\n                            value: 2.2,\n                            palette: \"white_on_red\",\n                        },\n                    ],\n                }],\n                title: \"Widget Title\",\n            },\n        },\n        {\n            groupDefinition: {\n                layoutType: \"ordered\",\n                title: \"Group Widget\",\n                widgets: [\n                    {\n                        noteDefinition: {\n                            content: \"cluster note widget\",\n                            backgroundColor: \"pink\",\n                            fontSize: \"14\",\n                            textAlign: \"center\",\n                            showTick: true,\n                            tickEdge: \"left\",\n                            tickPos: \"50%\",\n                        },\n                    },\n                    {\n                        alertGraphDefinition: {\n                            alertId: \"123\",\n                            vizType: \"toplist\",\n                            title: \"Alert Graph\",\n                            liveSpan: \"1h\",\n                        },\n                    },\n                ],\n            },\n        },\n        {\n            serviceLevelObjectiveDefinition: {\n                title: \"Widget Title\",\n                viewType: \"detail\",\n                sloId: \"56789\",\n                showErrorBudget: true,\n                viewMode: \"overall\",\n                timeWindows: [\n                    \"7d\",\n                    \"previous_week\",\n                ],\n            },\n        },\n    ],\n    templateVariables: [\n        {\n            name: \"var_1\",\n            prefix: \"host\",\n            \"default\": \"aws\",\n        },\n        {\n            name: \"var_2\",\n            prefix: \"service_name\",\n            \"default\": \"autoscaling\",\n        },\n    ],\n    templateVariablePresets: [{\n        name: \"preset_1\",\n        templateVariables: [\n            {\n                name: \"var_1\",\n                value: \"host.dc\",\n            },\n            {\n                name: \"var_2\",\n                value: \"my_service\",\n            },\n        ],\n    }],\n});\n// Example Free Layout\nconst freeDashboard = new datadog.Dashboard(\"free_dashboard\", {\n    title: \"Free Layout Dashboard\",\n    description: \"Created using the Datadog provider in Pulumi\",\n    layoutType: \"free\",\n    widgets: [\n        {\n            eventStreamDefinition: {\n                query: \"*\",\n                eventSize: \"l\",\n                title: \"Widget Title\",\n                titleSize: \"16\",\n                titleAlign: \"left\",\n                liveSpan: \"1h\",\n            },\n            widgetLayout: {\n                height: 43,\n                width: 32,\n                x: 0,\n                y: 0,\n            },\n        },\n        {\n            eventTimelineDefinition: {\n                query: \"*\",\n                title: \"Widget Title\",\n                titleSize: \"16\",\n                titleAlign: \"left\",\n                liveSpan: \"1h\",\n            },\n            widgetLayout: {\n                height: 9,\n                width: 66,\n                x: 33,\n                y: 60,\n            },\n        },\n        {\n            freeTextDefinition: {\n                text: \"free text content\",\n                color: \"#d00\",\n                fontSize: \"36\",\n                textAlign: \"left\",\n            },\n            widgetLayout: {\n                height: 20,\n                width: 34,\n                x: 33,\n                y: 0,\n            },\n        },\n        {\n            iframeDefinition: {\n                url: \"http://google.com\",\n            },\n            widgetLayout: {\n                height: 46,\n                width: 39,\n                x: 101,\n                y: 0,\n            },\n        },\n        {\n            imageDefinition: {\n                url: \"https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\",\n                sizing: \"fit\",\n                margin: \"small\",\n            },\n            widgetLayout: {\n                height: 20,\n                width: 30,\n                x: 69,\n                y: 0,\n            },\n        },\n        {\n            logStreamDefinition: {\n                indexes: [\"main\"],\n                query: \"error\",\n                columns: [\n                    \"core_host\",\n                    \"core_service\",\n                    \"tag_source\",\n                ],\n                showDateColumn: true,\n                showMessageColumn: true,\n                messageDisplay: \"expanded-md\",\n                sort: {\n                    column: \"time\",\n                    order: \"desc\",\n                },\n            },\n            widgetLayout: {\n                height: 36,\n                width: 32,\n                x: 0,\n                y: 45,\n            },\n        },\n        {\n            manageStatusDefinition: {\n                colorPreference: \"text\",\n                displayFormat: \"countsAndList\",\n                hideZeroCounts: true,\n                query: \"type:metric\",\n                showLastTriggered: false,\n                sort: \"status,asc\",\n                summaryType: \"monitors\",\n                title: \"Widget Title\",\n                titleSize: \"16\",\n                titleAlign: \"left\",\n            },\n            widgetLayout: {\n                height: 40,\n                width: 30,\n                x: 101,\n                y: 48,\n            },\n        },\n        {\n            traceServiceDefinition: {\n                displayFormat: \"three_column\",\n                env: \"datadog.com\",\n                service: \"alerting-cassandra\",\n                showBreakdown: true,\n                showDistribution: true,\n                showErrors: true,\n                showHits: true,\n                showLatency: false,\n                showResourceList: false,\n                sizeFormat: \"large\",\n                spanName: \"cassandra.query\",\n                title: \"alerting-cassandra #env:datadog.com\",\n                titleAlign: \"center\",\n                titleSize: \"13\",\n                liveSpan: \"1h\",\n            },\n            widgetLayout: {\n                height: 38,\n                width: 66,\n                x: 33,\n                y: 21,\n            },\n        },\n        {\n            timeseriesDefinition: {\n                requests: [{\n                    formulas: [\n                        {\n                            formulaExpression: \"my_query_1 + my_query_2\",\n                            alias: \"my ff query\",\n                        },\n                        {\n                            formulaExpression: \"my_query_1 * my_query_2\",\n                            limit: {\n                                count: 5,\n                                order: \"desc\",\n                            },\n                            alias: \"my second ff query\",\n                        },\n                    ],\n                    queries: [\n                        {\n                            metricQuery: {\n                                dataSource: \"metrics\",\n                                query: \"avg:system.cpu.user{app:general} by {env}\",\n                                name: \"my_query_1\",\n                                aggregator: \"sum\",\n                            },\n                        },\n                        {\n                            metricQuery: {\n                                query: \"avg:system.cpu.user{app:general} by {env}\",\n                                name: \"my_query_2\",\n                                aggregator: \"sum\",\n                            },\n                        },\n                    ],\n                }],\n            },\n            widgetLayout: {\n                height: 16,\n                width: 25,\n                x: 58,\n                y: 83,\n            },\n        },\n        {\n            timeseriesDefinition: {\n                requests: [\n                    {\n                        queries: [{\n                            eventQuery: {\n                                name: \"my-query\",\n                                dataSource: \"logs\",\n                                indexes: [\"days-3\"],\n                                computes: [{\n                                    aggregation: \"count\",\n                                }],\n                                groupBies: [{\n                                    facet: \"host\",\n                                    sort: {\n                                        metric: \"@lambda.max_memory_used\",\n                                        aggregation: \"avg\",\n                                    },\n                                    limit: 10,\n                                }],\n                            },\n                        }],\n                    },\n                    {\n                        displayType: \"overlay\",\n                        queries: [{\n                            metricQuery: {\n                                name: \"MyOverlay\",\n                                dataSource: \"metrics\",\n                                query: \"avg:system.cpu.user{host:COMP-QJWVM2FYT4}\",\n                            },\n                        }],\n                    },\n                ],\n            },\n            widgetLayout: {\n                height: 16,\n                width: 28,\n                x: 29,\n                y: 83,\n            },\n        },\n        {\n            timeseriesDefinition: {\n                requests: [{\n                    queries: [{\n                        processQuery: {\n                            dataSource: \"process\",\n                            textFilter: \"abc\",\n                            metric: \"process.stat.cpu.total_pct\",\n                            limit: 10,\n                            tagFilters: [\"some_filter\"],\n                            name: \"my_process_query\",\n                            sort: \"asc\",\n                            isNormalizedCpu: true,\n                            aggregator: \"sum\",\n                        },\n                    }],\n                }],\n            },\n            widgetLayout: {\n                height: 16,\n                width: 28,\n                x: 0,\n                y: 83,\n            },\n        },\n        {\n            timeseriesDefinition: {\n                requests: [{\n                    formulas: [{\n                        formulaExpression: \"query1\",\n                        alias: \"my cloud cost query\",\n                    }],\n                    queries: [{\n                        cloudCostQuery: {\n                            dataSource: \"cloud_cost\",\n                            query: \"sum:aws.cost.amortized{*}\",\n                            name: \"query1\",\n                            aggregator: \"sum\",\n                        },\n                    }],\n                }],\n            },\n        },\n        {\n            powerpackDefinition: {\n                powerpackId: \"00000000-0000-0000-0000-000000000000\",\n                backgroundColor: \"blue\",\n                bannerImg: \"https://example.org/example.png\",\n                showTitle: true,\n                title: \"Powerpack Widget\",\n                templateVariables: {\n                    controlledExternallies: [{\n                        name: \"var_2\",\n                        values: [\"autoscaling\"],\n                        prefix: \"service_name\",\n                    }],\n                    controlledByPowerpacks: [{\n                        name: \"var_3\",\n                        prefix: \"timeframe\",\n                        values: [\n                            \"default\",\n                            \"values\",\n                            \"here\",\n                        ],\n                    }],\n                },\n            },\n        },\n    ],\n    templateVariables: [\n        {\n            name: \"var_1\",\n            prefix: \"host\",\n            \"default\": \"aws\",\n        },\n        {\n            name: \"var_2\",\n            prefix: \"service_name\",\n            \"default\": \"autoscaling\",\n        },\n    ],\n    templateVariablePresets: [{\n        name: \"preset_1\",\n        templateVariables: [\n            {\n                name: \"var_1\",\n                value: \"host.dc\",\n            },\n            {\n                name: \"var_2\",\n                value: \"my_service\",\n            },\n        ],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Example Ordered Layout\nordered_dashboard = datadog.Dashboard(\"ordered_dashboard\",\n    title=\"Ordered Layout Dashboard\",\n    description=\"Created using the Datadog provider in Pulumi\",\n    layout_type=\"ordered\",\n    widgets=[\n        {\n            \"alert_graph_definition\": {\n                \"alert_id\": \"895605\",\n                \"viz_type\": \"timeseries\",\n                \"title\": \"Widget Title\",\n                \"live_span\": \"1h\",\n            },\n        },\n        {\n            \"alert_value_definition\": {\n                \"alert_id\": \"895605\",\n                \"precision\": 3,\n                \"unit\": \"b\",\n                \"text_align\": \"center\",\n                \"title\": \"Widget Title\",\n            },\n        },\n        {\n            \"alert_value_definition\": {\n                \"alert_id\": \"895605\",\n                \"precision\": 3,\n                \"unit\": \"b\",\n                \"text_align\": \"center\",\n                \"title\": \"Widget Title\",\n            },\n        },\n        {\n            \"change_definition\": {\n                \"requests\": [{\n                    \"q\": \"avg:system.load.1{env:staging} by {account}\",\n                    \"change_type\": \"absolute\",\n                    \"compare_to\": \"week_before\",\n                    \"increase_good\": True,\n                    \"order_by\": \"name\",\n                    \"order_dir\": \"desc\",\n                    \"show_present\": True,\n                }],\n                \"title\": \"Widget Title\",\n                \"live_span\": \"1h\",\n            },\n        },\n        {\n            \"distribution_definition\": {\n                \"requests\": [{\n                    \"q\": \"avg:system.load.1{env:staging} by {account}\",\n                    \"style\": {\n                        \"palette\": \"warm\",\n                    },\n                }],\n                \"title\": \"Widget Title\",\n                \"live_span\": \"1h\",\n            },\n        },\n        {\n            \"check_status_definition\": {\n                \"check\": \"aws.ecs.agent_connected\",\n                \"grouping\": \"cluster\",\n                \"group_bies\": [\n                    \"account\",\n                    \"cluster\",\n                ],\n                \"tags\": [\n                    \"account:demo\",\n                    \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\",\n                ],\n                \"title\": \"Widget Title\",\n                \"live_span\": \"1h\",\n            },\n        },\n        {\n            \"heatmap_definition\": {\n                \"requests\": [{\n                    \"q\": \"avg:system.load.1{env:staging} by {account}\",\n                    \"style\": {\n                        \"palette\": \"warm\",\n                    },\n                }],\n                \"yaxis\": {\n                    \"min\": \"1\",\n                    \"max\": \"2\",\n                    \"include_zero\": True,\n                    \"scale\": \"sqrt\",\n                },\n                \"title\": \"Widget Title\",\n                \"live_span\": \"1h\",\n            },\n        },\n        {\n            \"hostmap_definition\": {\n                \"request\": {\n                    \"fills\": [{\n                        \"q\": \"avg:system.load.1{*} by {host}\",\n                    }],\n                    \"sizes\": [{\n                        \"q\": \"avg:memcache.uptime{*} by {host}\",\n                    }],\n                },\n                \"node_type\": \"container\",\n                \"groups\": [\n                    \"host\",\n                    \"region\",\n                ],\n                \"no_group_hosts\": True,\n                \"no_metric_hosts\": True,\n                \"scopes\": [\n                    \"region:us-east-1\",\n                    \"aws_account:727006795293\",\n                ],\n                \"style\": {\n                    \"palette\": \"yellow_to_green\",\n                    \"palette_flip\": True,\n                    \"fill_min\": \"10\",\n                    \"fill_max\": \"20\",\n                },\n                \"title\": \"Widget Title\",\n            },\n        },\n        {\n            \"note_definition\": {\n                \"content\": \"note text\",\n                \"background_color\": \"pink\",\n                \"font_size\": \"14\",\n                \"text_align\": \"center\",\n                \"show_tick\": True,\n                \"tick_edge\": \"left\",\n                \"tick_pos\": \"50%\",\n            },\n        },\n        {\n            \"query_value_definition\": {\n                \"requests\": [{\n                    \"q\": \"avg:system.load.1{env:staging} by {account}\",\n                    \"aggregator\": \"sum\",\n                    \"conditional_formats\": [\n                        {\n                            \"comparator\": \"\u003c\",\n                            \"value\": 2,\n                            \"palette\": \"white_on_green\",\n                        },\n                        {\n                            \"comparator\": \"\u003e\",\n                            \"value\": 2.2,\n                            \"palette\": \"white_on_red\",\n                        },\n                    ],\n                }],\n                \"autoscale\": True,\n                \"custom_unit\": \"xx\",\n                \"precision\": 4,\n                \"text_align\": \"right\",\n                \"title\": \"Widget Title\",\n                \"live_span\": \"1h\",\n            },\n        },\n        {\n            \"query_table_definition\": {\n                \"requests\": [{\n                    \"q\": \"avg:system.load.1{env:staging} by {account}\",\n                    \"aggregator\": \"sum\",\n                    \"limit\": 10,\n                    \"conditional_formats\": [\n                        {\n                            \"comparator\": \"\u003c\",\n                            \"value\": 2,\n                            \"palette\": \"white_on_green\",\n                        },\n                        {\n                            \"comparator\": \"\u003e\",\n                            \"value\": 2.2,\n                            \"palette\": \"white_on_red\",\n                        },\n                    ],\n                }],\n                \"title\": \"Widget Title\",\n                \"live_span\": \"1h\",\n            },\n        },\n        {\n            \"scatterplot_definition\": {\n                \"request\": {\n                    \"xes\": [{\n                        \"q\": \"avg:system.cpu.user{*} by {service, account}\",\n                        \"aggregator\": \"max\",\n                    }],\n                    \"ys\": [{\n                        \"q\": \"avg:system.mem.used{*} by {service, account}\",\n                        \"aggregator\": \"min\",\n                    }],\n                },\n                \"color_by_groups\": [\n                    \"account\",\n                    \"apm-role-group\",\n                ],\n                \"xaxis\": {\n                    \"include_zero\": True,\n                    \"label\": \"x\",\n                    \"min\": \"1\",\n                    \"max\": \"2000\",\n                    \"scale\": \"pow\",\n                },\n                \"yaxis\": {\n                    \"include_zero\": False,\n                    \"label\": \"y\",\n                    \"min\": \"5\",\n                    \"max\": \"2222\",\n                    \"scale\": \"log\",\n                },\n                \"title\": \"Widget Title\",\n                \"live_span\": \"1h\",\n            },\n        },\n        {\n            \"servicemap_definition\": {\n                \"service\": \"master-db\",\n                \"filters\": [\n                    \"env:prod\",\n                    \"datacenter:dc1\",\n                ],\n                \"title\": \"env: prod, datacenter:dc1, service: master-db\",\n                \"title_size\": \"16\",\n                \"title_align\": \"left\",\n            },\n        },\n        {\n            \"timeseries_definition\": {\n                \"requests\": [\n                    {\n                        \"q\": \"avg:system.cpu.user{app:general} by {env}\",\n                        \"display_type\": \"line\",\n                        \"style\": {\n                            \"palette\": \"warm\",\n                            \"line_type\": \"dashed\",\n                            \"line_width\": \"thin\",\n                        },\n                        \"metadatas\": [{\n                            \"expression\": \"avg:system.cpu.user{app:general} by {env}\",\n                            \"alias_name\": \"Alpha\",\n                        }],\n                    },\n                    {\n                        \"log_query\": {\n                            \"index\": \"mcnulty\",\n                            \"compute_query\": {\n                                \"aggregation\": \"avg\",\n                                \"facet\": \"@duration\",\n                                \"interval\": 5000,\n                            },\n                            \"search_query\": \"status:info\",\n                            \"group_bies\": [{\n                                \"facet\": \"host\",\n                                \"limit\": 10,\n                                \"sort_query\": {\n                                    \"aggregation\": \"avg\",\n                                    \"order\": \"desc\",\n                                    \"facet\": \"@duration\",\n                                },\n                            }],\n                        },\n                        \"display_type\": \"area\",\n                    },\n                    {\n                        \"apm_query\": {\n                            \"index\": \"apm-search\",\n                            \"compute_query\": {\n                                \"aggregation\": \"avg\",\n                                \"facet\": \"@duration\",\n                                \"interval\": 5000,\n                            },\n                            \"search_query\": \"type:web\",\n                            \"group_bies\": [{\n                                \"facet\": \"resource_name\",\n                                \"limit\": 50,\n                                \"sort_query\": {\n                                    \"aggregation\": \"avg\",\n                                    \"order\": \"desc\",\n                                    \"facet\": \"@string_query.interval\",\n                                },\n                            }],\n                        },\n                        \"display_type\": \"bars\",\n                    },\n                    {\n                        \"process_query\": {\n                            \"metric\": \"process.stat.cpu.total_pct\",\n                            \"search_by\": \"error\",\n                            \"filter_bies\": [\"active\"],\n                            \"limit\": 50,\n                        },\n                        \"display_type\": \"area\",\n                    },\n                ],\n                \"markers\": [\n                    {\n                        \"display_type\": \"error dashed\",\n                        \"label\": \" z=6 \",\n                        \"value\": \"y = 4\",\n                    },\n                    {\n                        \"display_type\": \"ok solid\",\n                        \"value\": \"10 \u003c y \u003c 999\",\n                        \"label\": \" x=8 \",\n                    },\n                ],\n                \"title\": \"Widget Title\",\n                \"show_legend\": True,\n                \"legend_size\": \"2\",\n                \"live_span\": \"1h\",\n                \"events\": [\n                    {\n                        \"q\": \"sources:test tags:1\",\n                    },\n                    {\n                        \"q\": \"sources:test tags:2\",\n                    },\n                ],\n                \"yaxis\": {\n                    \"scale\": \"log\",\n                    \"include_zero\": False,\n                    \"max\": \"100\",\n                },\n            },\n        },\n        {\n            \"toplist_definition\": {\n                \"requests\": [{\n                    \"q\": \"avg:system.cpu.user{app:general} by {env}\",\n                    \"conditional_formats\": [\n                        {\n                            \"comparator\": \"\u003c\",\n                            \"value\": 2,\n                            \"palette\": \"white_on_green\",\n                        },\n                        {\n                            \"comparator\": \"\u003e\",\n                            \"value\": 2.2,\n                            \"palette\": \"white_on_red\",\n                        },\n                    ],\n                }],\n                \"title\": \"Widget Title\",\n            },\n        },\n        {\n            \"group_definition\": {\n                \"layout_type\": \"ordered\",\n                \"title\": \"Group Widget\",\n                \"widgets\": [\n                    {\n                        \"note_definition\": {\n                            \"content\": \"cluster note widget\",\n                            \"background_color\": \"pink\",\n                            \"font_size\": \"14\",\n                            \"text_align\": \"center\",\n                            \"show_tick\": True,\n                            \"tick_edge\": \"left\",\n                            \"tick_pos\": \"50%\",\n                        },\n                    },\n                    {\n                        \"alert_graph_definition\": {\n                            \"alert_id\": \"123\",\n                            \"viz_type\": \"toplist\",\n                            \"title\": \"Alert Graph\",\n                            \"live_span\": \"1h\",\n                        },\n                    },\n                ],\n            },\n        },\n        {\n            \"service_level_objective_definition\": {\n                \"title\": \"Widget Title\",\n                \"view_type\": \"detail\",\n                \"slo_id\": \"56789\",\n                \"show_error_budget\": True,\n                \"view_mode\": \"overall\",\n                \"time_windows\": [\n                    \"7d\",\n                    \"previous_week\",\n                ],\n            },\n        },\n    ],\n    template_variables=[\n        {\n            \"name\": \"var_1\",\n            \"prefix\": \"host\",\n            \"default\": \"aws\",\n        },\n        {\n            \"name\": \"var_2\",\n            \"prefix\": \"service_name\",\n            \"default\": \"autoscaling\",\n        },\n    ],\n    template_variable_presets=[{\n        \"name\": \"preset_1\",\n        \"template_variables\": [\n            {\n                \"name\": \"var_1\",\n                \"value\": \"host.dc\",\n            },\n            {\n                \"name\": \"var_2\",\n                \"value\": \"my_service\",\n            },\n        ],\n    }])\n# Example Free Layout\nfree_dashboard = datadog.Dashboard(\"free_dashboard\",\n    title=\"Free Layout Dashboard\",\n    description=\"Created using the Datadog provider in Pulumi\",\n    layout_type=\"free\",\n    widgets=[\n        {\n            \"event_stream_definition\": {\n                \"query\": \"*\",\n                \"event_size\": \"l\",\n                \"title\": \"Widget Title\",\n                \"title_size\": \"16\",\n                \"title_align\": \"left\",\n                \"live_span\": \"1h\",\n            },\n            \"widget_layout\": {\n                \"height\": 43,\n                \"width\": 32,\n                \"x\": 0,\n                \"y\": 0,\n            },\n        },\n        {\n            \"event_timeline_definition\": {\n                \"query\": \"*\",\n                \"title\": \"Widget Title\",\n                \"title_size\": \"16\",\n                \"title_align\": \"left\",\n                \"live_span\": \"1h\",\n            },\n            \"widget_layout\": {\n                \"height\": 9,\n                \"width\": 66,\n                \"x\": 33,\n                \"y\": 60,\n            },\n        },\n        {\n            \"free_text_definition\": {\n                \"text\": \"free text content\",\n                \"color\": \"#d00\",\n                \"font_size\": \"36\",\n                \"text_align\": \"left\",\n            },\n            \"widget_layout\": {\n                \"height\": 20,\n                \"width\": 34,\n                \"x\": 33,\n                \"y\": 0,\n            },\n        },\n        {\n            \"iframe_definition\": {\n                \"url\": \"http://google.com\",\n            },\n            \"widget_layout\": {\n                \"height\": 46,\n                \"width\": 39,\n                \"x\": 101,\n                \"y\": 0,\n            },\n        },\n        {\n            \"image_definition\": {\n                \"url\": \"https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\",\n                \"sizing\": \"fit\",\n                \"margin\": \"small\",\n            },\n            \"widget_layout\": {\n                \"height\": 20,\n                \"width\": 30,\n                \"x\": 69,\n                \"y\": 0,\n            },\n        },\n        {\n            \"log_stream_definition\": {\n                \"indexes\": [\"main\"],\n                \"query\": \"error\",\n                \"columns\": [\n                    \"core_host\",\n                    \"core_service\",\n                    \"tag_source\",\n                ],\n                \"show_date_column\": True,\n                \"show_message_column\": True,\n                \"message_display\": \"expanded-md\",\n                \"sort\": {\n                    \"column\": \"time\",\n                    \"order\": \"desc\",\n                },\n            },\n            \"widget_layout\": {\n                \"height\": 36,\n                \"width\": 32,\n                \"x\": 0,\n                \"y\": 45,\n            },\n        },\n        {\n            \"manage_status_definition\": {\n                \"color_preference\": \"text\",\n                \"display_format\": \"countsAndList\",\n                \"hide_zero_counts\": True,\n                \"query\": \"type:metric\",\n                \"show_last_triggered\": False,\n                \"sort\": \"status,asc\",\n                \"summary_type\": \"monitors\",\n                \"title\": \"Widget Title\",\n                \"title_size\": \"16\",\n                \"title_align\": \"left\",\n            },\n            \"widget_layout\": {\n                \"height\": 40,\n                \"width\": 30,\n                \"x\": 101,\n                \"y\": 48,\n            },\n        },\n        {\n            \"trace_service_definition\": {\n                \"display_format\": \"three_column\",\n                \"env\": \"datadog.com\",\n                \"service\": \"alerting-cassandra\",\n                \"show_breakdown\": True,\n                \"show_distribution\": True,\n                \"show_errors\": True,\n                \"show_hits\": True,\n                \"show_latency\": False,\n                \"show_resource_list\": False,\n                \"size_format\": \"large\",\n                \"span_name\": \"cassandra.query\",\n                \"title\": \"alerting-cassandra #env:datadog.com\",\n                \"title_align\": \"center\",\n                \"title_size\": \"13\",\n                \"live_span\": \"1h\",\n            },\n            \"widget_layout\": {\n                \"height\": 38,\n                \"width\": 66,\n                \"x\": 33,\n                \"y\": 21,\n            },\n        },\n        {\n            \"timeseries_definition\": {\n                \"requests\": [{\n                    \"formulas\": [\n                        {\n                            \"formula_expression\": \"my_query_1 + my_query_2\",\n                            \"alias\": \"my ff query\",\n                        },\n                        {\n                            \"formula_expression\": \"my_query_1 * my_query_2\",\n                            \"limit\": {\n                                \"count\": 5,\n                                \"order\": \"desc\",\n                            },\n                            \"alias\": \"my second ff query\",\n                        },\n                    ],\n                    \"queries\": [\n                        {\n                            \"metric_query\": {\n                                \"data_source\": \"metrics\",\n                                \"query\": \"avg:system.cpu.user{app:general} by {env}\",\n                                \"name\": \"my_query_1\",\n                                \"aggregator\": \"sum\",\n                            },\n                        },\n                        {\n                            \"metric_query\": {\n                                \"query\": \"avg:system.cpu.user{app:general} by {env}\",\n                                \"name\": \"my_query_2\",\n                                \"aggregator\": \"sum\",\n                            },\n                        },\n                    ],\n                }],\n            },\n            \"widget_layout\": {\n                \"height\": 16,\n                \"width\": 25,\n                \"x\": 58,\n                \"y\": 83,\n            },\n        },\n        {\n            \"timeseries_definition\": {\n                \"requests\": [\n                    {\n                        \"queries\": [{\n                            \"event_query\": {\n                                \"name\": \"my-query\",\n                                \"data_source\": \"logs\",\n                                \"indexes\": [\"days-3\"],\n                                \"computes\": [{\n                                    \"aggregation\": \"count\",\n                                }],\n                                \"group_bies\": [{\n                                    \"facet\": \"host\",\n                                    \"sort\": {\n                                        \"metric\": \"@lambda.max_memory_used\",\n                                        \"aggregation\": \"avg\",\n                                    },\n                                    \"limit\": 10,\n                                }],\n                            },\n                        }],\n                    },\n                    {\n                        \"display_type\": \"overlay\",\n                        \"queries\": [{\n                            \"metric_query\": {\n                                \"name\": \"MyOverlay\",\n                                \"data_source\": \"metrics\",\n                                \"query\": \"avg:system.cpu.user{host:COMP-QJWVM2FYT4}\",\n                            },\n                        }],\n                    },\n                ],\n            },\n            \"widget_layout\": {\n                \"height\": 16,\n                \"width\": 28,\n                \"x\": 29,\n                \"y\": 83,\n            },\n        },\n        {\n            \"timeseries_definition\": {\n                \"requests\": [{\n                    \"queries\": [{\n                        \"process_query\": {\n                            \"data_source\": \"process\",\n                            \"text_filter\": \"abc\",\n                            \"metric\": \"process.stat.cpu.total_pct\",\n                            \"limit\": 10,\n                            \"tag_filters\": [\"some_filter\"],\n                            \"name\": \"my_process_query\",\n                            \"sort\": \"asc\",\n                            \"is_normalized_cpu\": True,\n                            \"aggregator\": \"sum\",\n                        },\n                    }],\n                }],\n            },\n            \"widget_layout\": {\n                \"height\": 16,\n                \"width\": 28,\n                \"x\": 0,\n                \"y\": 83,\n            },\n        },\n        {\n            \"timeseries_definition\": {\n                \"requests\": [{\n                    \"formulas\": [{\n                        \"formula_expression\": \"query1\",\n                        \"alias\": \"my cloud cost query\",\n                    }],\n                    \"queries\": [{\n                        \"cloud_cost_query\": {\n                            \"data_source\": \"cloud_cost\",\n                            \"query\": \"sum:aws.cost.amortized{*}\",\n                            \"name\": \"query1\",\n                            \"aggregator\": \"sum\",\n                        },\n                    }],\n                }],\n            },\n        },\n        {\n            \"powerpack_definition\": {\n                \"powerpack_id\": \"00000000-0000-0000-0000-000000000000\",\n                \"background_color\": \"blue\",\n                \"banner_img\": \"https://example.org/example.png\",\n                \"show_title\": True,\n                \"title\": \"Powerpack Widget\",\n                \"template_variables\": {\n                    \"controlled_externallies\": [{\n                        \"name\": \"var_2\",\n                        \"values\": [\"autoscaling\"],\n                        \"prefix\": \"service_name\",\n                    }],\n                    \"controlled_by_powerpacks\": [{\n                        \"name\": \"var_3\",\n                        \"prefix\": \"timeframe\",\n                        \"values\": [\n                            \"default\",\n                            \"values\",\n                            \"here\",\n                        ],\n                    }],\n                },\n            },\n        },\n    ],\n    template_variables=[\n        {\n            \"name\": \"var_1\",\n            \"prefix\": \"host\",\n            \"default\": \"aws\",\n        },\n        {\n            \"name\": \"var_2\",\n            \"prefix\": \"service_name\",\n            \"default\": \"autoscaling\",\n        },\n    ],\n    template_variable_presets=[{\n        \"name\": \"preset_1\",\n        \"template_variables\": [\n            {\n                \"name\": \"var_1\",\n                \"value\": \"host.dc\",\n            },\n            {\n                \"name\": \"var_2\",\n                \"value\": \"my_service\",\n            },\n        ],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Example Ordered Layout\n    var orderedDashboard = new Datadog.Dashboard(\"ordered_dashboard\", new()\n    {\n        Title = \"Ordered Layout Dashboard\",\n        Description = \"Created using the Datadog provider in Pulumi\",\n        LayoutType = \"ordered\",\n        Widgets = new[]\n        {\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                AlertGraphDefinition = new Datadog.Inputs.DashboardWidgetAlertGraphDefinitionArgs\n                {\n                    AlertId = \"895605\",\n                    VizType = \"timeseries\",\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                AlertValueDefinition = new Datadog.Inputs.DashboardWidgetAlertValueDefinitionArgs\n                {\n                    AlertId = \"895605\",\n                    Precision = 3,\n                    Unit = \"b\",\n                    TextAlign = \"center\",\n                    Title = \"Widget Title\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                AlertValueDefinition = new Datadog.Inputs.DashboardWidgetAlertValueDefinitionArgs\n                {\n                    AlertId = \"895605\",\n                    Precision = 3,\n                    Unit = \"b\",\n                    TextAlign = \"center\",\n                    Title = \"Widget Title\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                ChangeDefinition = new Datadog.Inputs.DashboardWidgetChangeDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetChangeDefinitionRequestArgs\n                        {\n                            Q = \"avg:system.load.1{env:staging} by {account}\",\n                            ChangeType = \"absolute\",\n                            CompareTo = \"week_before\",\n                            IncreaseGood = true,\n                            OrderBy = \"name\",\n                            OrderDir = \"desc\",\n                            ShowPresent = true,\n                        },\n                    },\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                DistributionDefinition = new Datadog.Inputs.DashboardWidgetDistributionDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetDistributionDefinitionRequestArgs\n                        {\n                            Q = \"avg:system.load.1{env:staging} by {account}\",\n                            Style = new Datadog.Inputs.DashboardWidgetDistributionDefinitionRequestStyleArgs\n                            {\n                                Palette = \"warm\",\n                            },\n                        },\n                    },\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                CheckStatusDefinition = new Datadog.Inputs.DashboardWidgetCheckStatusDefinitionArgs\n                {\n                    Check = \"aws.ecs.agent_connected\",\n                    Grouping = \"cluster\",\n                    GroupBies = new[]\n                    {\n                        \"account\",\n                        \"cluster\",\n                    },\n                    Tags = new[]\n                    {\n                        \"account:demo\",\n                        \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\",\n                    },\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                HeatmapDefinition = new Datadog.Inputs.DashboardWidgetHeatmapDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetHeatmapDefinitionRequestArgs\n                        {\n                            Q = \"avg:system.load.1{env:staging} by {account}\",\n                            Style = new Datadog.Inputs.DashboardWidgetHeatmapDefinitionRequestStyleArgs\n                            {\n                                Palette = \"warm\",\n                            },\n                        },\n                    },\n                    Yaxis = new Datadog.Inputs.DashboardWidgetHeatmapDefinitionYaxisArgs\n                    {\n                        Min = \"1\",\n                        Max = \"2\",\n                        IncludeZero = true,\n                        Scale = \"sqrt\",\n                    },\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                HostmapDefinition = new Datadog.Inputs.DashboardWidgetHostmapDefinitionArgs\n                {\n                    Request = new Datadog.Inputs.DashboardWidgetHostmapDefinitionRequestArgs\n                    {\n                        Fills = new[]\n                        {\n                            new Datadog.Inputs.DashboardWidgetHostmapDefinitionRequestFillArgs\n                            {\n                                Q = \"avg:system.load.1{*} by {host}\",\n                            },\n                        },\n                        Sizes = new[]\n                        {\n                            new Datadog.Inputs.DashboardWidgetHostmapDefinitionRequestSizeArgs\n                            {\n                                Q = \"avg:memcache.uptime{*} by {host}\",\n                            },\n                        },\n                    },\n                    NodeType = \"container\",\n                    Groups = new[]\n                    {\n                        \"host\",\n                        \"region\",\n                    },\n                    NoGroupHosts = true,\n                    NoMetricHosts = true,\n                    Scopes = new[]\n                    {\n                        \"region:us-east-1\",\n                        \"aws_account:727006795293\",\n                    },\n                    Style = new Datadog.Inputs.DashboardWidgetHostmapDefinitionStyleArgs\n                    {\n                        Palette = \"yellow_to_green\",\n                        PaletteFlip = true,\n                        FillMin = \"10\",\n                        FillMax = \"20\",\n                    },\n                    Title = \"Widget Title\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                NoteDefinition = new Datadog.Inputs.DashboardWidgetNoteDefinitionArgs\n                {\n                    Content = \"note text\",\n                    BackgroundColor = \"pink\",\n                    FontSize = \"14\",\n                    TextAlign = \"center\",\n                    ShowTick = true,\n                    TickEdge = \"left\",\n                    TickPos = \"50%\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                QueryValueDefinition = new Datadog.Inputs.DashboardWidgetQueryValueDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetQueryValueDefinitionRequestArgs\n                        {\n                            Q = \"avg:system.load.1{env:staging} by {account}\",\n                            Aggregator = \"sum\",\n                            ConditionalFormats = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetQueryValueDefinitionRequestConditionalFormatArgs\n                                {\n                                    Comparator = \"\u003c\",\n                                    Value = 2,\n                                    Palette = \"white_on_green\",\n                                },\n                                new Datadog.Inputs.DashboardWidgetQueryValueDefinitionRequestConditionalFormatArgs\n                                {\n                                    Comparator = \"\u003e\",\n                                    Value = 2.2,\n                                    Palette = \"white_on_red\",\n                                },\n                            },\n                        },\n                    },\n                    Autoscale = true,\n                    CustomUnit = \"xx\",\n                    Precision = 4,\n                    TextAlign = \"right\",\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                QueryTableDefinition = new Datadog.Inputs.DashboardWidgetQueryTableDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetQueryTableDefinitionRequestArgs\n                        {\n                            Q = \"avg:system.load.1{env:staging} by {account}\",\n                            Aggregator = \"sum\",\n                            Limit = 10,\n                            ConditionalFormats = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetQueryTableDefinitionRequestConditionalFormatArgs\n                                {\n                                    Comparator = \"\u003c\",\n                                    Value = 2,\n                                    Palette = \"white_on_green\",\n                                },\n                                new Datadog.Inputs.DashboardWidgetQueryTableDefinitionRequestConditionalFormatArgs\n                                {\n                                    Comparator = \"\u003e\",\n                                    Value = 2.2,\n                                    Palette = \"white_on_red\",\n                                },\n                            },\n                        },\n                    },\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                ScatterplotDefinition = new Datadog.Inputs.DashboardWidgetScatterplotDefinitionArgs\n                {\n                    Request = new Datadog.Inputs.DashboardWidgetScatterplotDefinitionRequestArgs\n                    {\n                        Xes = new[]\n                        {\n                            new Datadog.Inputs.DashboardWidgetScatterplotDefinitionRequestXArgs\n                            {\n                                Q = \"avg:system.cpu.user{*} by {service, account}\",\n                                Aggregator = \"max\",\n                            },\n                        },\n                        Ys = new[]\n                        {\n                            new Datadog.Inputs.DashboardWidgetScatterplotDefinitionRequestYArgs\n                            {\n                                Q = \"avg:system.mem.used{*} by {service, account}\",\n                                Aggregator = \"min\",\n                            },\n                        },\n                    },\n                    ColorByGroups = new[]\n                    {\n                        \"account\",\n                        \"apm-role-group\",\n                    },\n                    Xaxis = new Datadog.Inputs.DashboardWidgetScatterplotDefinitionXaxisArgs\n                    {\n                        IncludeZero = true,\n                        Label = \"x\",\n                        Min = \"1\",\n                        Max = \"2000\",\n                        Scale = \"pow\",\n                    },\n                    Yaxis = new Datadog.Inputs.DashboardWidgetScatterplotDefinitionYaxisArgs\n                    {\n                        IncludeZero = false,\n                        Label = \"y\",\n                        Min = \"5\",\n                        Max = \"2222\",\n                        Scale = \"log\",\n                    },\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                ServicemapDefinition = new Datadog.Inputs.DashboardWidgetServicemapDefinitionArgs\n                {\n                    Service = \"master-db\",\n                    Filters = new[]\n                    {\n                        \"env:prod\",\n                        \"datacenter:dc1\",\n                    },\n                    Title = \"env: prod, datacenter:dc1, service: master-db\",\n                    TitleSize = \"16\",\n                    TitleAlign = \"left\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            Q = \"avg:system.cpu.user{app:general} by {env}\",\n                            DisplayType = \"line\",\n                            Style = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestStyleArgs\n                            {\n                                Palette = \"warm\",\n                                LineType = \"dashed\",\n                                LineWidth = \"thin\",\n                            },\n                            Metadatas = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestMetadataArgs\n                                {\n                                    Expression = \"avg:system.cpu.user{app:general} by {env}\",\n                                    AliasName = \"Alpha\",\n                                },\n                            },\n                        },\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            LogQuery = new Datadog.Inputs.DashboardWidgetLogQueryArgs\n                            {\n                                Index = \"mcnulty\",\n                                ComputeQuery = new Datadog.Inputs.DashboardWidgetLogQueryComputeQueryArgs\n                                {\n                                    Aggregation = \"avg\",\n                                    Facet = \"@duration\",\n                                    Interval = 5000,\n                                },\n                                SearchQuery = \"status:info\",\n                                GroupBies = new[]\n                                {\n                                    new Datadog.Inputs.DashboardWidgetLogQueryGroupByArgs\n                                    {\n                                        Facet = \"host\",\n                                        Limit = 10,\n                                        SortQuery = new Datadog.Inputs.DashboardWidgetLogQueryGroupBySortQueryArgs\n                                        {\n                                            Aggregation = \"avg\",\n                                            Order = \"desc\",\n                                            Facet = \"@duration\",\n                                        },\n                                    },\n                                },\n                            },\n                            DisplayType = \"area\",\n                        },\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            ApmQuery = new Datadog.Inputs.DashboardWidgetApmQueryArgs\n                            {\n                                Index = \"apm-search\",\n                                ComputeQuery = new Datadog.Inputs.DashboardWidgetApmQueryComputeQueryArgs\n                                {\n                                    Aggregation = \"avg\",\n                                    Facet = \"@duration\",\n                                    Interval = 5000,\n                                },\n                                SearchQuery = \"type:web\",\n                                GroupBies = new[]\n                                {\n                                    new Datadog.Inputs.DashboardWidgetApmQueryGroupByArgs\n                                    {\n                                        Facet = \"resource_name\",\n                                        Limit = 50,\n                                        SortQuery = new Datadog.Inputs.DashboardWidgetApmQueryGroupBySortQueryArgs\n                                        {\n                                            Aggregation = \"avg\",\n                                            Order = \"desc\",\n                                            Facet = \"@string_query.interval\",\n                                        },\n                                    },\n                                },\n                            },\n                            DisplayType = \"bars\",\n                        },\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            ProcessQuery = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestProcessQueryArgs\n                            {\n                                Metric = \"process.stat.cpu.total_pct\",\n                                SearchBy = \"error\",\n                                FilterBies = new[]\n                                {\n                                    \"active\",\n                                },\n                                Limit = 50,\n                            },\n                            DisplayType = \"area\",\n                        },\n                    },\n                    Markers = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionMarkerArgs\n                        {\n                            DisplayType = \"error dashed\",\n                            Label = \" z=6 \",\n                            Value = \"y = 4\",\n                        },\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionMarkerArgs\n                        {\n                            DisplayType = \"ok solid\",\n                            Value = \"10 \u003c y \u003c 999\",\n                            Label = \" x=8 \",\n                        },\n                    },\n                    Title = \"Widget Title\",\n                    ShowLegend = true,\n                    LegendSize = \"2\",\n                    LiveSpan = \"1h\",\n                    Events = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionEventArgs\n                        {\n                            Q = \"sources:test tags:1\",\n                        },\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionEventArgs\n                        {\n                            Q = \"sources:test tags:2\",\n                        },\n                    },\n                    Yaxis = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionYaxisArgs\n                    {\n                        Scale = \"log\",\n                        IncludeZero = false,\n                        Max = \"100\",\n                    },\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                ToplistDefinition = new Datadog.Inputs.DashboardWidgetToplistDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetToplistDefinitionRequestArgs\n                        {\n                            Q = \"avg:system.cpu.user{app:general} by {env}\",\n                            ConditionalFormats = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetToplistDefinitionRequestConditionalFormatArgs\n                                {\n                                    Comparator = \"\u003c\",\n                                    Value = 2,\n                                    Palette = \"white_on_green\",\n                                },\n                                new Datadog.Inputs.DashboardWidgetToplistDefinitionRequestConditionalFormatArgs\n                                {\n                                    Comparator = \"\u003e\",\n                                    Value = 2.2,\n                                    Palette = \"white_on_red\",\n                                },\n                            },\n                        },\n                    },\n                    Title = \"Widget Title\",\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                GroupDefinition = new Datadog.Inputs.DashboardWidgetGroupDefinitionArgs\n                {\n                    LayoutType = \"ordered\",\n                    Title = \"Group Widget\",\n                    Widgets = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetGroupDefinitionWidgetArgs\n                        {\n                            NoteDefinition = new Datadog.Inputs.DashboardWidgetNoteDefinitionArgs\n                            {\n                                Content = \"cluster note widget\",\n                                BackgroundColor = \"pink\",\n                                FontSize = \"14\",\n                                TextAlign = \"center\",\n                                ShowTick = true,\n                                TickEdge = \"left\",\n                                TickPos = \"50%\",\n                            },\n                        },\n                        new Datadog.Inputs.DashboardWidgetGroupDefinitionWidgetArgs\n                        {\n                            AlertGraphDefinition = new Datadog.Inputs.DashboardWidgetAlertGraphDefinitionArgs\n                            {\n                                AlertId = \"123\",\n                                VizType = \"toplist\",\n                                Title = \"Alert Graph\",\n                                LiveSpan = \"1h\",\n                            },\n                        },\n                    },\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                ServiceLevelObjectiveDefinition = new Datadog.Inputs.DashboardWidgetServiceLevelObjectiveDefinitionArgs\n                {\n                    Title = \"Widget Title\",\n                    ViewType = \"detail\",\n                    SloId = \"56789\",\n                    ShowErrorBudget = true,\n                    ViewMode = \"overall\",\n                    TimeWindows = new[]\n                    {\n                        \"7d\",\n                        \"previous_week\",\n                    },\n                },\n            },\n        },\n        TemplateVariables = new[]\n        {\n            new Datadog.Inputs.DashboardTemplateVariableArgs\n            {\n                Name = \"var_1\",\n                Prefix = \"host\",\n                Default = \"aws\",\n            },\n            new Datadog.Inputs.DashboardTemplateVariableArgs\n            {\n                Name = \"var_2\",\n                Prefix = \"service_name\",\n                Default = \"autoscaling\",\n            },\n        },\n        TemplateVariablePresets = new[]\n        {\n            new Datadog.Inputs.DashboardTemplateVariablePresetArgs\n            {\n                Name = \"preset_1\",\n                TemplateVariables = new[]\n                {\n                    new Datadog.Inputs.DashboardTemplateVariablePresetTemplateVariableArgs\n                    {\n                        Name = \"var_1\",\n                        Value = \"host.dc\",\n                    },\n                    new Datadog.Inputs.DashboardTemplateVariablePresetTemplateVariableArgs\n                    {\n                        Name = \"var_2\",\n                        Value = \"my_service\",\n                    },\n                },\n            },\n        },\n    });\n\n    // Example Free Layout\n    var freeDashboard = new Datadog.Dashboard(\"free_dashboard\", new()\n    {\n        Title = \"Free Layout Dashboard\",\n        Description = \"Created using the Datadog provider in Pulumi\",\n        LayoutType = \"free\",\n        Widgets = new[]\n        {\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                EventStreamDefinition = new Datadog.Inputs.DashboardWidgetEventStreamDefinitionArgs\n                {\n                    Query = \"*\",\n                    EventSize = \"l\",\n                    Title = \"Widget Title\",\n                    TitleSize = \"16\",\n                    TitleAlign = \"left\",\n                    LiveSpan = \"1h\",\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 43,\n                    Width = 32,\n                    X = 0,\n                    Y = 0,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                EventTimelineDefinition = new Datadog.Inputs.DashboardWidgetEventTimelineDefinitionArgs\n                {\n                    Query = \"*\",\n                    Title = \"Widget Title\",\n                    TitleSize = \"16\",\n                    TitleAlign = \"left\",\n                    LiveSpan = \"1h\",\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 9,\n                    Width = 66,\n                    X = 33,\n                    Y = 60,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                FreeTextDefinition = new Datadog.Inputs.DashboardWidgetFreeTextDefinitionArgs\n                {\n                    Text = \"free text content\",\n                    Color = \"#d00\",\n                    FontSize = \"36\",\n                    TextAlign = \"left\",\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 20,\n                    Width = 34,\n                    X = 33,\n                    Y = 0,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                IframeDefinition = new Datadog.Inputs.DashboardWidgetIframeDefinitionArgs\n                {\n                    Url = \"http://google.com\",\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 46,\n                    Width = 39,\n                    X = 101,\n                    Y = 0,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                ImageDefinition = new Datadog.Inputs.DashboardWidgetImageDefinitionArgs\n                {\n                    Url = \"https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\",\n                    Sizing = \"fit\",\n                    Margin = \"small\",\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 20,\n                    Width = 30,\n                    X = 69,\n                    Y = 0,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                LogStreamDefinition = new Datadog.Inputs.DashboardWidgetLogStreamDefinitionArgs\n                {\n                    Indexes = new[]\n                    {\n                        \"main\",\n                    },\n                    Query = \"error\",\n                    Columns = new[]\n                    {\n                        \"core_host\",\n                        \"core_service\",\n                        \"tag_source\",\n                    },\n                    ShowDateColumn = true,\n                    ShowMessageColumn = true,\n                    MessageDisplay = \"expanded-md\",\n                    Sort = new Datadog.Inputs.DashboardWidgetLogStreamDefinitionSortArgs\n                    {\n                        Column = \"time\",\n                        Order = \"desc\",\n                    },\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 36,\n                    Width = 32,\n                    X = 0,\n                    Y = 45,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                ManageStatusDefinition = new Datadog.Inputs.DashboardWidgetManageStatusDefinitionArgs\n                {\n                    ColorPreference = \"text\",\n                    DisplayFormat = \"countsAndList\",\n                    HideZeroCounts = true,\n                    Query = \"type:metric\",\n                    ShowLastTriggered = false,\n                    Sort = \"status,asc\",\n                    SummaryType = \"monitors\",\n                    Title = \"Widget Title\",\n                    TitleSize = \"16\",\n                    TitleAlign = \"left\",\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 40,\n                    Width = 30,\n                    X = 101,\n                    Y = 48,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                TraceServiceDefinition = new Datadog.Inputs.DashboardWidgetTraceServiceDefinitionArgs\n                {\n                    DisplayFormat = \"three_column\",\n                    Env = \"datadog.com\",\n                    Service = \"alerting-cassandra\",\n                    ShowBreakdown = true,\n                    ShowDistribution = true,\n                    ShowErrors = true,\n                    ShowHits = true,\n                    ShowLatency = false,\n                    ShowResourceList = false,\n                    SizeFormat = \"large\",\n                    SpanName = \"cassandra.query\",\n                    Title = \"alerting-cassandra #env:datadog.com\",\n                    TitleAlign = \"center\",\n                    TitleSize = \"13\",\n                    LiveSpan = \"1h\",\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 38,\n                    Width = 66,\n                    X = 33,\n                    Y = 21,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            Formulas = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestFormulaArgs\n                                {\n                                    FormulaExpression = \"my_query_1 + my_query_2\",\n                                    Alias = \"my ff query\",\n                                },\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestFormulaArgs\n                                {\n                                    FormulaExpression = \"my_query_1 * my_query_2\",\n                                    Limit = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestFormulaLimitArgs\n                                    {\n                                        Count = 5,\n                                        Order = \"desc\",\n                                    },\n                                    Alias = \"my second ff query\",\n                                },\n                            },\n                            Queries = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryArgs\n                                {\n                                    MetricQuery = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs\n                                    {\n                                        DataSource = \"metrics\",\n                                        Query = \"avg:system.cpu.user{app:general} by {env}\",\n                                        Name = \"my_query_1\",\n                                        Aggregator = \"sum\",\n                                    },\n                                },\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryArgs\n                                {\n                                    MetricQuery = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs\n                                    {\n                                        Query = \"avg:system.cpu.user{app:general} by {env}\",\n                                        Name = \"my_query_2\",\n                                        Aggregator = \"sum\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 16,\n                    Width = 25,\n                    X = 58,\n                    Y = 83,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            Queries = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryArgs\n                                {\n                                    EventQuery = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryArgs\n                                    {\n                                        Name = \"my-query\",\n                                        DataSource = \"logs\",\n                                        Indexes = new[]\n                                        {\n                                            \"days-3\",\n                                        },\n                                        Computes = new[]\n                                        {\n                                            new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeArgs\n                                            {\n                                                Aggregation = \"count\",\n                                            },\n                                        },\n                                        GroupBies = new[]\n                                        {\n                                            new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByArgs\n                                            {\n                                                Facet = \"host\",\n                                                Sort = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortArgs\n                                                {\n                                                    Metric = \"@lambda.max_memory_used\",\n                                                    Aggregation = \"avg\",\n                                                },\n                                                Limit = 10,\n                                            },\n                                        },\n                                    },\n                                },\n                            },\n                        },\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            DisplayType = \"overlay\",\n                            Queries = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryArgs\n                                {\n                                    MetricQuery = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs\n                                    {\n                                        Name = \"MyOverlay\",\n                                        DataSource = \"metrics\",\n                                        Query = \"avg:system.cpu.user{host:COMP-QJWVM2FYT4}\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 16,\n                    Width = 28,\n                    X = 29,\n                    Y = 83,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            Queries = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryArgs\n                                {\n                                    ProcessQuery = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryArgs\n                                    {\n                                        DataSource = \"process\",\n                                        TextFilter = \"abc\",\n                                        Metric = \"process.stat.cpu.total_pct\",\n                                        Limit = 10,\n                                        TagFilters = new[]\n                                        {\n                                            \"some_filter\",\n                                        },\n                                        Name = \"my_process_query\",\n                                        Sort = \"asc\",\n                                        IsNormalizedCpu = true,\n                                        Aggregator = \"sum\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 16,\n                    Width = 28,\n                    X = 0,\n                    Y = 83,\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                TimeseriesDefinition = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionArgs\n                {\n                    Requests = new[]\n                    {\n                        new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestArgs\n                        {\n                            Formulas = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestFormulaArgs\n                                {\n                                    FormulaExpression = \"query1\",\n                                    Alias = \"my cloud cost query\",\n                                },\n                            },\n                            Queries = new[]\n                            {\n                                new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryArgs\n                                {\n                                    CloudCostQuery = new Datadog.Inputs.DashboardWidgetTimeseriesDefinitionRequestQueryCloudCostQueryArgs\n                                    {\n                                        DataSource = \"cloud_cost\",\n                                        Query = \"sum:aws.cost.amortized{*}\",\n                                        Name = \"query1\",\n                                        Aggregator = \"sum\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                PowerpackDefinition = new Datadog.Inputs.DashboardWidgetPowerpackDefinitionArgs\n                {\n                    PowerpackId = \"00000000-0000-0000-0000-000000000000\",\n                    BackgroundColor = \"blue\",\n                    BannerImg = \"https://example.org/example.png\",\n                    ShowTitle = true,\n                    Title = \"Powerpack Widget\",\n                    TemplateVariables = new Datadog.Inputs.DashboardWidgetPowerpackDefinitionTemplateVariablesArgs\n                    {\n                        ControlledExternallies = new[]\n                        {\n                            new Datadog.Inputs.DashboardWidgetPowerpackDefinitionTemplateVariablesControlledExternallyArgs\n                            {\n                                Name = \"var_2\",\n                                Values = new[]\n                                {\n                                    \"autoscaling\",\n                                },\n                                Prefix = \"service_name\",\n                            },\n                        },\n                        ControlledByPowerpacks = new[]\n                        {\n                            new Datadog.Inputs.DashboardWidgetPowerpackDefinitionTemplateVariablesControlledByPowerpackArgs\n                            {\n                                Name = \"var_3\",\n                                Prefix = \"timeframe\",\n                                Values = new[]\n                                {\n                                    \"default\",\n                                    \"values\",\n                                    \"here\",\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n        },\n        TemplateVariables = new[]\n        {\n            new Datadog.Inputs.DashboardTemplateVariableArgs\n            {\n                Name = \"var_1\",\n                Prefix = \"host\",\n                Default = \"aws\",\n            },\n            new Datadog.Inputs.DashboardTemplateVariableArgs\n            {\n                Name = \"var_2\",\n                Prefix = \"service_name\",\n                Default = \"autoscaling\",\n            },\n        },\n        TemplateVariablePresets = new[]\n        {\n            new Datadog.Inputs.DashboardTemplateVariablePresetArgs\n            {\n                Name = \"preset_1\",\n                TemplateVariables = new[]\n                {\n                    new Datadog.Inputs.DashboardTemplateVariablePresetTemplateVariableArgs\n                    {\n                        Name = \"var_1\",\n                        Value = \"host.dc\",\n                    },\n                    new Datadog.Inputs.DashboardTemplateVariablePresetTemplateVariableArgs\n                    {\n                        Name = \"var_2\",\n                        Value = \"my_service\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Example Ordered Layout\n\t\t_, err := datadog.NewDashboard(ctx, \"ordered_dashboard\", \u0026datadog.DashboardArgs{\n\t\t\tTitle:       pulumi.String(\"Ordered Layout Dashboard\"),\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in Pulumi\"),\n\t\t\tLayoutType:  pulumi.String(\"ordered\"),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tAlertGraphDefinition: \u0026datadog.DashboardWidgetAlertGraphDefinitionArgs{\n\t\t\t\t\t\tAlertId:  pulumi.String(\"895605\"),\n\t\t\t\t\t\tVizType:  pulumi.String(\"timeseries\"),\n\t\t\t\t\t\tTitle:    pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tAlertValueDefinition: \u0026datadog.DashboardWidgetAlertValueDefinitionArgs{\n\t\t\t\t\t\tAlertId:   pulumi.String(\"895605\"),\n\t\t\t\t\t\tPrecision: pulumi.Int(3),\n\t\t\t\t\t\tUnit:      pulumi.String(\"b\"),\n\t\t\t\t\t\tTextAlign: pulumi.String(\"center\"),\n\t\t\t\t\t\tTitle:     pulumi.String(\"Widget Title\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tAlertValueDefinition: \u0026datadog.DashboardWidgetAlertValueDefinitionArgs{\n\t\t\t\t\t\tAlertId:   pulumi.String(\"895605\"),\n\t\t\t\t\t\tPrecision: pulumi.Int(3),\n\t\t\t\t\t\tUnit:      pulumi.String(\"b\"),\n\t\t\t\t\t\tTextAlign: pulumi.String(\"center\"),\n\t\t\t\t\t\tTitle:     pulumi.String(\"Widget Title\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tChangeDefinition: \u0026datadog.DashboardWidgetChangeDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetChangeDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetChangeDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQ:            pulumi.String(\"avg:system.load.1{env:staging} by {account}\"),\n\t\t\t\t\t\t\t\tChangeType:   pulumi.String(\"absolute\"),\n\t\t\t\t\t\t\t\tCompareTo:    pulumi.String(\"week_before\"),\n\t\t\t\t\t\t\t\tIncreaseGood: pulumi.Bool(true),\n\t\t\t\t\t\t\t\tOrderBy:      pulumi.String(\"name\"),\n\t\t\t\t\t\t\t\tOrderDir:     pulumi.String(\"desc\"),\n\t\t\t\t\t\t\t\tShowPresent:  pulumi.Bool(true),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle:    pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tDistributionDefinition: \u0026datadog.DashboardWidgetDistributionDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetDistributionDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetDistributionDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQ: pulumi.String(\"avg:system.load.1{env:staging} by {account}\"),\n\t\t\t\t\t\t\t\tStyle: \u0026datadog.DashboardWidgetDistributionDefinitionRequestStyleArgs{\n\t\t\t\t\t\t\t\t\tPalette: pulumi.String(\"warm\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle:    pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tCheckStatusDefinition: \u0026datadog.DashboardWidgetCheckStatusDefinitionArgs{\n\t\t\t\t\t\tCheck:    pulumi.String(\"aws.ecs.agent_connected\"),\n\t\t\t\t\t\tGrouping: pulumi.String(\"cluster\"),\n\t\t\t\t\t\tGroupBies: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"account\"),\n\t\t\t\t\t\t\tpulumi.String(\"cluster\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTags: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"account:demo\"),\n\t\t\t\t\t\t\tpulumi.String(\"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle:    pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tHeatmapDefinition: \u0026datadog.DashboardWidgetHeatmapDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetHeatmapDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetHeatmapDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQ: pulumi.String(\"avg:system.load.1{env:staging} by {account}\"),\n\t\t\t\t\t\t\t\tStyle: \u0026datadog.DashboardWidgetHeatmapDefinitionRequestStyleArgs{\n\t\t\t\t\t\t\t\t\tPalette: pulumi.String(\"warm\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tYaxis: \u0026datadog.DashboardWidgetHeatmapDefinitionYaxisArgs{\n\t\t\t\t\t\t\tMin:         pulumi.String(\"1\"),\n\t\t\t\t\t\t\tMax:         pulumi.String(\"2\"),\n\t\t\t\t\t\t\tIncludeZero: pulumi.Bool(true),\n\t\t\t\t\t\t\tScale:       pulumi.String(\"sqrt\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle:    pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tHostmapDefinition: \u0026datadog.DashboardWidgetHostmapDefinitionArgs{\n\t\t\t\t\t\tRequest: \u0026datadog.DashboardWidgetHostmapDefinitionRequestArgs{\n\t\t\t\t\t\t\tFills: datadog.DashboardWidgetHostmapDefinitionRequestFillArray{\n\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetHostmapDefinitionRequestFillArgs{\n\t\t\t\t\t\t\t\t\tQ: pulumi.String(\"avg:system.load.1{*} by {host}\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tSizes: datadog.DashboardWidgetHostmapDefinitionRequestSizeArray{\n\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetHostmapDefinitionRequestSizeArgs{\n\t\t\t\t\t\t\t\t\tQ: pulumi.String(\"avg:memcache.uptime{*} by {host}\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tNodeType: pulumi.String(\"container\"),\n\t\t\t\t\t\tGroups: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"host\"),\n\t\t\t\t\t\t\tpulumi.String(\"region\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tNoGroupHosts:  pulumi.Bool(true),\n\t\t\t\t\t\tNoMetricHosts: pulumi.Bool(true),\n\t\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"region:us-east-1\"),\n\t\t\t\t\t\t\tpulumi.String(\"aws_account:727006795293\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tStyle: \u0026datadog.DashboardWidgetHostmapDefinitionStyleArgs{\n\t\t\t\t\t\t\tPalette:     pulumi.String(\"yellow_to_green\"),\n\t\t\t\t\t\t\tPaletteFlip: pulumi.Bool(true),\n\t\t\t\t\t\t\tFillMin:     pulumi.String(\"10\"),\n\t\t\t\t\t\t\tFillMax:     pulumi.String(\"20\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle: pulumi.String(\"Widget Title\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tNoteDefinition: \u0026datadog.DashboardWidgetNoteDefinitionArgs{\n\t\t\t\t\t\tContent:         pulumi.String(\"note text\"),\n\t\t\t\t\t\tBackgroundColor: pulumi.String(\"pink\"),\n\t\t\t\t\t\tFontSize:        pulumi.String(\"14\"),\n\t\t\t\t\t\tTextAlign:       pulumi.String(\"center\"),\n\t\t\t\t\t\tShowTick:        pulumi.Bool(true),\n\t\t\t\t\t\tTickEdge:        pulumi.String(\"left\"),\n\t\t\t\t\t\tTickPos:         pulumi.String(\"50%\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tQueryValueDefinition: \u0026datadog.DashboardWidgetQueryValueDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetQueryValueDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetQueryValueDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQ:          pulumi.String(\"avg:system.load.1{env:staging} by {account}\"),\n\t\t\t\t\t\t\t\tAggregator: pulumi.String(\"sum\"),\n\t\t\t\t\t\t\t\tConditionalFormats: datadog.DashboardWidgetQueryValueDefinitionRequestConditionalFormatArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetQueryValueDefinitionRequestConditionalFormatArgs{\n\t\t\t\t\t\t\t\t\t\tComparator: pulumi.String(\"\u003c\"),\n\t\t\t\t\t\t\t\t\t\tValue:      pulumi.Float64(2),\n\t\t\t\t\t\t\t\t\t\tPalette:    pulumi.String(\"white_on_green\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetQueryValueDefinitionRequestConditionalFormatArgs{\n\t\t\t\t\t\t\t\t\t\tComparator: pulumi.String(\"\u003e\"),\n\t\t\t\t\t\t\t\t\t\tValue:      pulumi.Float64(2.2),\n\t\t\t\t\t\t\t\t\t\tPalette:    pulumi.String(\"white_on_red\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tAutoscale:  pulumi.Bool(true),\n\t\t\t\t\t\tCustomUnit: pulumi.String(\"xx\"),\n\t\t\t\t\t\tPrecision:  pulumi.Int(4),\n\t\t\t\t\t\tTextAlign:  pulumi.String(\"right\"),\n\t\t\t\t\t\tTitle:      pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan:   pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tQueryTableDefinition: \u0026datadog.DashboardWidgetQueryTableDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetQueryTableDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetQueryTableDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQ:          pulumi.String(\"avg:system.load.1{env:staging} by {account}\"),\n\t\t\t\t\t\t\t\tAggregator: pulumi.String(\"sum\"),\n\t\t\t\t\t\t\t\tLimit:      pulumi.Int(10),\n\t\t\t\t\t\t\t\tConditionalFormats: datadog.DashboardWidgetQueryTableDefinitionRequestConditionalFormatArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetQueryTableDefinitionRequestConditionalFormatArgs{\n\t\t\t\t\t\t\t\t\t\tComparator: pulumi.String(\"\u003c\"),\n\t\t\t\t\t\t\t\t\t\tValue:      pulumi.Float64(2),\n\t\t\t\t\t\t\t\t\t\tPalette:    pulumi.String(\"white_on_green\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetQueryTableDefinitionRequestConditionalFormatArgs{\n\t\t\t\t\t\t\t\t\t\tComparator: pulumi.String(\"\u003e\"),\n\t\t\t\t\t\t\t\t\t\tValue:      pulumi.Float64(2.2),\n\t\t\t\t\t\t\t\t\t\tPalette:    pulumi.String(\"white_on_red\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle:    pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tScatterplotDefinition: \u0026datadog.DashboardWidgetScatterplotDefinitionArgs{\n\t\t\t\t\t\tRequest: \u0026datadog.DashboardWidgetScatterplotDefinitionRequestArgs{\n\t\t\t\t\t\t\tXes: datadog.DashboardWidgetScatterplotDefinitionRequestXArray{\n\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetScatterplotDefinitionRequestXArgs{\n\t\t\t\t\t\t\t\t\tQ:          pulumi.String(\"avg:system.cpu.user{*} by {service, account}\"),\n\t\t\t\t\t\t\t\t\tAggregator: pulumi.String(\"max\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tYs: datadog.DashboardWidgetScatterplotDefinitionRequestYArray{\n\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetScatterplotDefinitionRequestYArgs{\n\t\t\t\t\t\t\t\t\tQ:          pulumi.String(\"avg:system.mem.used{*} by {service, account}\"),\n\t\t\t\t\t\t\t\t\tAggregator: pulumi.String(\"min\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tColorByGroups: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"account\"),\n\t\t\t\t\t\t\tpulumi.String(\"apm-role-group\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tXaxis: \u0026datadog.DashboardWidgetScatterplotDefinitionXaxisArgs{\n\t\t\t\t\t\t\tIncludeZero: pulumi.Bool(true),\n\t\t\t\t\t\t\tLabel:       pulumi.String(\"x\"),\n\t\t\t\t\t\t\tMin:         pulumi.String(\"1\"),\n\t\t\t\t\t\t\tMax:         pulumi.String(\"2000\"),\n\t\t\t\t\t\t\tScale:       pulumi.String(\"pow\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tYaxis: \u0026datadog.DashboardWidgetScatterplotDefinitionYaxisArgs{\n\t\t\t\t\t\t\tIncludeZero: pulumi.Bool(false),\n\t\t\t\t\t\t\tLabel:       pulumi.String(\"y\"),\n\t\t\t\t\t\t\tMin:         pulumi.String(\"5\"),\n\t\t\t\t\t\t\tMax:         pulumi.String(\"2222\"),\n\t\t\t\t\t\t\tScale:       pulumi.String(\"log\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle:    pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tServicemapDefinition: \u0026datadog.DashboardWidgetServicemapDefinitionArgs{\n\t\t\t\t\t\tService: pulumi.String(\"master-db\"),\n\t\t\t\t\t\tFilters: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"env:prod\"),\n\t\t\t\t\t\t\tpulumi.String(\"datacenter:dc1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle:      pulumi.String(\"env: prod, datacenter:dc1, service: master-db\"),\n\t\t\t\t\t\tTitleSize:  pulumi.String(\"16\"),\n\t\t\t\t\t\tTitleAlign: pulumi.String(\"left\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tTimeseriesDefinition: \u0026datadog.DashboardWidgetTimeseriesDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetTimeseriesDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQ:           pulumi.String(\"avg:system.cpu.user{app:general} by {env}\"),\n\t\t\t\t\t\t\t\tDisplayType: pulumi.String(\"line\"),\n\t\t\t\t\t\t\t\tStyle: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestStyleArgs{\n\t\t\t\t\t\t\t\t\tPalette:   pulumi.String(\"warm\"),\n\t\t\t\t\t\t\t\t\tLineType:  pulumi.String(\"dashed\"),\n\t\t\t\t\t\t\t\t\tLineWidth: pulumi.String(\"thin\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tMetadatas: datadog.DashboardWidgetTimeseriesDefinitionRequestMetadataArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestMetadataArgs{\n\t\t\t\t\t\t\t\t\t\tExpression: pulumi.String(\"avg:system.cpu.user{app:general} by {env}\"),\n\t\t\t\t\t\t\t\t\t\tAliasName:  pulumi.String(\"Alpha\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tLogQuery: \u0026datadog.DashboardWidgetLogQueryArgs{\n\t\t\t\t\t\t\t\t\tIndex: pulumi.String(\"mcnulty\"),\n\t\t\t\t\t\t\t\t\tComputeQuery: \u0026datadog.DashboardWidgetLogQueryComputeQueryArgs{\n\t\t\t\t\t\t\t\t\t\tAggregation: pulumi.String(\"avg\"),\n\t\t\t\t\t\t\t\t\t\tFacet:       pulumi.String(\"@duration\"),\n\t\t\t\t\t\t\t\t\t\tInterval:    pulumi.Int(5000),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tSearchQuery: pulumi.String(\"status:info\"),\n\t\t\t\t\t\t\t\t\tGroupBies: datadog.DashboardWidgetLogQueryGroupByArray{\n\t\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetLogQueryGroupByArgs{\n\t\t\t\t\t\t\t\t\t\t\tFacet: pulumi.String(\"host\"),\n\t\t\t\t\t\t\t\t\t\t\tLimit: pulumi.Int(10),\n\t\t\t\t\t\t\t\t\t\t\tSortQuery: \u0026datadog.DashboardWidgetLogQueryGroupBySortQueryArgs{\n\t\t\t\t\t\t\t\t\t\t\t\tAggregation: pulumi.String(\"avg\"),\n\t\t\t\t\t\t\t\t\t\t\t\tOrder:       pulumi.String(\"desc\"),\n\t\t\t\t\t\t\t\t\t\t\t\tFacet:       pulumi.String(\"@duration\"),\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tDisplayType: pulumi.String(\"area\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tApmQuery: \u0026datadog.DashboardWidgetApmQueryArgs{\n\t\t\t\t\t\t\t\t\tIndex: pulumi.String(\"apm-search\"),\n\t\t\t\t\t\t\t\t\tComputeQuery: \u0026datadog.DashboardWidgetApmQueryComputeQueryArgs{\n\t\t\t\t\t\t\t\t\t\tAggregation: pulumi.String(\"avg\"),\n\t\t\t\t\t\t\t\t\t\tFacet:       pulumi.String(\"@duration\"),\n\t\t\t\t\t\t\t\t\t\tInterval:    pulumi.Int(5000),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tSearchQuery: pulumi.String(\"type:web\"),\n\t\t\t\t\t\t\t\t\tGroupBies: datadog.DashboardWidgetApmQueryGroupByArray{\n\t\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetApmQueryGroupByArgs{\n\t\t\t\t\t\t\t\t\t\t\tFacet: pulumi.String(\"resource_name\"),\n\t\t\t\t\t\t\t\t\t\t\tLimit: pulumi.Int(50),\n\t\t\t\t\t\t\t\t\t\t\tSortQuery: \u0026datadog.DashboardWidgetApmQueryGroupBySortQueryArgs{\n\t\t\t\t\t\t\t\t\t\t\t\tAggregation: pulumi.String(\"avg\"),\n\t\t\t\t\t\t\t\t\t\t\t\tOrder:       pulumi.String(\"desc\"),\n\t\t\t\t\t\t\t\t\t\t\t\tFacet:       pulumi.String(\"@string_query.interval\"),\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tDisplayType: pulumi.String(\"bars\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tProcessQuery: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestProcessQueryArgs{\n\t\t\t\t\t\t\t\t\tMetric:   pulumi.String(\"process.stat.cpu.total_pct\"),\n\t\t\t\t\t\t\t\t\tSearchBy: pulumi.String(\"error\"),\n\t\t\t\t\t\t\t\t\tFilterBies: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"active\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tLimit: pulumi.Int(50),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tDisplayType: pulumi.String(\"area\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tMarkers: datadog.DashboardWidgetTimeseriesDefinitionMarkerArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionMarkerArgs{\n\t\t\t\t\t\t\t\tDisplayType: pulumi.String(\"error dashed\"),\n\t\t\t\t\t\t\t\tLabel:       pulumi.String(\" z=6 \"),\n\t\t\t\t\t\t\t\tValue:       pulumi.String(\"y = 4\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionMarkerArgs{\n\t\t\t\t\t\t\t\tDisplayType: pulumi.String(\"ok solid\"),\n\t\t\t\t\t\t\t\tValue:       pulumi.String(\"10 \u003c y \u003c 999\"),\n\t\t\t\t\t\t\t\tLabel:       pulumi.String(\" x=8 \"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle:      pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tShowLegend: pulumi.Bool(true),\n\t\t\t\t\t\tLegendSize: pulumi.String(\"2\"),\n\t\t\t\t\t\tLiveSpan:   pulumi.String(\"1h\"),\n\t\t\t\t\t\tEvents: datadog.DashboardWidgetTimeseriesDefinitionEventArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionEventArgs{\n\t\t\t\t\t\t\t\tQ: pulumi.String(\"sources:test tags:1\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionEventArgs{\n\t\t\t\t\t\t\t\tQ: pulumi.String(\"sources:test tags:2\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tYaxis: \u0026datadog.DashboardWidgetTimeseriesDefinitionYaxisArgs{\n\t\t\t\t\t\t\tScale:       pulumi.String(\"log\"),\n\t\t\t\t\t\t\tIncludeZero: pulumi.Bool(false),\n\t\t\t\t\t\t\tMax:         pulumi.String(\"100\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tToplistDefinition: \u0026datadog.DashboardWidgetToplistDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetToplistDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetToplistDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQ: pulumi.String(\"avg:system.cpu.user{app:general} by {env}\"),\n\t\t\t\t\t\t\t\tConditionalFormats: datadog.DashboardWidgetToplistDefinitionRequestConditionalFormatArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetToplistDefinitionRequestConditionalFormatArgs{\n\t\t\t\t\t\t\t\t\t\tComparator: pulumi.String(\"\u003c\"),\n\t\t\t\t\t\t\t\t\t\tValue:      pulumi.Float64(2),\n\t\t\t\t\t\t\t\t\t\tPalette:    pulumi.String(\"white_on_green\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetToplistDefinitionRequestConditionalFormatArgs{\n\t\t\t\t\t\t\t\t\t\tComparator: pulumi.String(\"\u003e\"),\n\t\t\t\t\t\t\t\t\t\tValue:      pulumi.Float64(2.2),\n\t\t\t\t\t\t\t\t\t\tPalette:    pulumi.String(\"white_on_red\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle: pulumi.String(\"Widget Title\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tGroupDefinition: \u0026datadog.DashboardWidgetGroupDefinitionArgs{\n\t\t\t\t\t\tLayoutType: pulumi.String(\"ordered\"),\n\t\t\t\t\t\tTitle:      pulumi.String(\"Group Widget\"),\n\t\t\t\t\t\tWidgets: datadog.DashboardWidgetGroupDefinitionWidgetArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetGroupDefinitionWidgetArgs{\n\t\t\t\t\t\t\t\tNoteDefinition: \u0026datadog.DashboardWidgetNoteDefinitionArgs{\n\t\t\t\t\t\t\t\t\tContent:         pulumi.String(\"cluster note widget\"),\n\t\t\t\t\t\t\t\t\tBackgroundColor: pulumi.String(\"pink\"),\n\t\t\t\t\t\t\t\t\tFontSize:        pulumi.String(\"14\"),\n\t\t\t\t\t\t\t\t\tTextAlign:       pulumi.String(\"center\"),\n\t\t\t\t\t\t\t\t\tShowTick:        pulumi.Bool(true),\n\t\t\t\t\t\t\t\t\tTickEdge:        pulumi.String(\"left\"),\n\t\t\t\t\t\t\t\t\tTickPos:         pulumi.String(\"50%\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetGroupDefinitionWidgetArgs{\n\t\t\t\t\t\t\t\tAlertGraphDefinition: \u0026datadog.DashboardWidgetAlertGraphDefinitionArgs{\n\t\t\t\t\t\t\t\t\tAlertId:  pulumi.String(\"123\"),\n\t\t\t\t\t\t\t\t\tVizType:  pulumi.String(\"toplist\"),\n\t\t\t\t\t\t\t\t\tTitle:    pulumi.String(\"Alert Graph\"),\n\t\t\t\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tServiceLevelObjectiveDefinition: \u0026datadog.DashboardWidgetServiceLevelObjectiveDefinitionArgs{\n\t\t\t\t\t\tTitle:           pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tViewType:        pulumi.String(\"detail\"),\n\t\t\t\t\t\tSloId:           pulumi.String(\"56789\"),\n\t\t\t\t\t\tShowErrorBudget: pulumi.Bool(true),\n\t\t\t\t\t\tViewMode:        pulumi.String(\"overall\"),\n\t\t\t\t\t\tTimeWindows: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"7d\"),\n\t\t\t\t\t\t\tpulumi.String(\"previous_week\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateVariables: datadog.DashboardTemplateVariableArray{\n\t\t\t\t\u0026datadog.DashboardTemplateVariableArgs{\n\t\t\t\t\tName:    pulumi.String(\"var_1\"),\n\t\t\t\t\tPrefix:  pulumi.String(\"host\"),\n\t\t\t\t\tDefault: pulumi.String(\"aws\"),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardTemplateVariableArgs{\n\t\t\t\t\tName:    pulumi.String(\"var_2\"),\n\t\t\t\t\tPrefix:  pulumi.String(\"service_name\"),\n\t\t\t\t\tDefault: pulumi.String(\"autoscaling\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateVariablePresets: datadog.DashboardTemplateVariablePresetArray{\n\t\t\t\t\u0026datadog.DashboardTemplateVariablePresetArgs{\n\t\t\t\t\tName: pulumi.String(\"preset_1\"),\n\t\t\t\t\tTemplateVariables: datadog.DashboardTemplateVariablePresetTemplateVariableArray{\n\t\t\t\t\t\t\u0026datadog.DashboardTemplateVariablePresetTemplateVariableArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"var_1\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"host.dc\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026datadog.DashboardTemplateVariablePresetTemplateVariableArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"var_2\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"my_service\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Example Free Layout\n\t\t_, err = datadog.NewDashboard(ctx, \"free_dashboard\", \u0026datadog.DashboardArgs{\n\t\t\tTitle:       pulumi.String(\"Free Layout Dashboard\"),\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in Pulumi\"),\n\t\t\tLayoutType:  pulumi.String(\"free\"),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tEventStreamDefinition: \u0026datadog.DashboardWidgetEventStreamDefinitionArgs{\n\t\t\t\t\t\tQuery:      pulumi.String(\"*\"),\n\t\t\t\t\t\tEventSize:  pulumi.String(\"l\"),\n\t\t\t\t\t\tTitle:      pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tTitleSize:  pulumi.String(\"16\"),\n\t\t\t\t\t\tTitleAlign: pulumi.String(\"left\"),\n\t\t\t\t\t\tLiveSpan:   pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(43),\n\t\t\t\t\t\tWidth:  pulumi.Int(32),\n\t\t\t\t\t\tX:      pulumi.Int(0),\n\t\t\t\t\t\tY:      pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tEventTimelineDefinition: \u0026datadog.DashboardWidgetEventTimelineDefinitionArgs{\n\t\t\t\t\t\tQuery:      pulumi.String(\"*\"),\n\t\t\t\t\t\tTitle:      pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tTitleSize:  pulumi.String(\"16\"),\n\t\t\t\t\t\tTitleAlign: pulumi.String(\"left\"),\n\t\t\t\t\t\tLiveSpan:   pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(9),\n\t\t\t\t\t\tWidth:  pulumi.Int(66),\n\t\t\t\t\t\tX:      pulumi.Int(33),\n\t\t\t\t\t\tY:      pulumi.Int(60),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tFreeTextDefinition: \u0026datadog.DashboardWidgetFreeTextDefinitionArgs{\n\t\t\t\t\t\tText:      pulumi.String(\"free text content\"),\n\t\t\t\t\t\tColor:     pulumi.String(\"#d00\"),\n\t\t\t\t\t\tFontSize:  pulumi.String(\"36\"),\n\t\t\t\t\t\tTextAlign: pulumi.String(\"left\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(20),\n\t\t\t\t\t\tWidth:  pulumi.Int(34),\n\t\t\t\t\t\tX:      pulumi.Int(33),\n\t\t\t\t\t\tY:      pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tIframeDefinition: \u0026datadog.DashboardWidgetIframeDefinitionArgs{\n\t\t\t\t\t\tUrl: pulumi.String(\"http://google.com\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(46),\n\t\t\t\t\t\tWidth:  pulumi.Int(39),\n\t\t\t\t\t\tX:      pulumi.Int(101),\n\t\t\t\t\t\tY:      pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tImageDefinition: \u0026datadog.DashboardWidgetImageDefinitionArgs{\n\t\t\t\t\t\tUrl:    pulumi.String(\"https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\"),\n\t\t\t\t\t\tSizing: pulumi.String(\"fit\"),\n\t\t\t\t\t\tMargin: pulumi.String(\"small\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(20),\n\t\t\t\t\t\tWidth:  pulumi.Int(30),\n\t\t\t\t\t\tX:      pulumi.Int(69),\n\t\t\t\t\t\tY:      pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tLogStreamDefinition: \u0026datadog.DashboardWidgetLogStreamDefinitionArgs{\n\t\t\t\t\t\tIndexes: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"main\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tQuery: pulumi.String(\"error\"),\n\t\t\t\t\t\tColumns: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"core_host\"),\n\t\t\t\t\t\t\tpulumi.String(\"core_service\"),\n\t\t\t\t\t\t\tpulumi.String(\"tag_source\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tShowDateColumn:    pulumi.Bool(true),\n\t\t\t\t\t\tShowMessageColumn: pulumi.Bool(true),\n\t\t\t\t\t\tMessageDisplay:    pulumi.String(\"expanded-md\"),\n\t\t\t\t\t\tSort: \u0026datadog.DashboardWidgetLogStreamDefinitionSortArgs{\n\t\t\t\t\t\t\tColumn: pulumi.String(\"time\"),\n\t\t\t\t\t\t\tOrder:  pulumi.String(\"desc\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(36),\n\t\t\t\t\t\tWidth:  pulumi.Int(32),\n\t\t\t\t\t\tX:      pulumi.Int(0),\n\t\t\t\t\t\tY:      pulumi.Int(45),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tManageStatusDefinition: \u0026datadog.DashboardWidgetManageStatusDefinitionArgs{\n\t\t\t\t\t\tColorPreference:   pulumi.String(\"text\"),\n\t\t\t\t\t\tDisplayFormat:     pulumi.String(\"countsAndList\"),\n\t\t\t\t\t\tHideZeroCounts:    pulumi.Bool(true),\n\t\t\t\t\t\tQuery:             pulumi.String(\"type:metric\"),\n\t\t\t\t\t\tShowLastTriggered: pulumi.Bool(false),\n\t\t\t\t\t\tSort:              pulumi.String(\"status,asc\"),\n\t\t\t\t\t\tSummaryType:       pulumi.String(\"monitors\"),\n\t\t\t\t\t\tTitle:             pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tTitleSize:         pulumi.String(\"16\"),\n\t\t\t\t\t\tTitleAlign:        pulumi.String(\"left\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(40),\n\t\t\t\t\t\tWidth:  pulumi.Int(30),\n\t\t\t\t\t\tX:      pulumi.Int(101),\n\t\t\t\t\t\tY:      pulumi.Int(48),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tTraceServiceDefinition: \u0026datadog.DashboardWidgetTraceServiceDefinitionArgs{\n\t\t\t\t\t\tDisplayFormat:    pulumi.String(\"three_column\"),\n\t\t\t\t\t\tEnv:              pulumi.String(\"datadog.com\"),\n\t\t\t\t\t\tService:          pulumi.String(\"alerting-cassandra\"),\n\t\t\t\t\t\tShowBreakdown:    pulumi.Bool(true),\n\t\t\t\t\t\tShowDistribution: pulumi.Bool(true),\n\t\t\t\t\t\tShowErrors:       pulumi.Bool(true),\n\t\t\t\t\t\tShowHits:         pulumi.Bool(true),\n\t\t\t\t\t\tShowLatency:      pulumi.Bool(false),\n\t\t\t\t\t\tShowResourceList: pulumi.Bool(false),\n\t\t\t\t\t\tSizeFormat:       pulumi.String(\"large\"),\n\t\t\t\t\t\tSpanName:         pulumi.String(\"cassandra.query\"),\n\t\t\t\t\t\tTitle:            pulumi.String(\"alerting-cassandra #env:datadog.com\"),\n\t\t\t\t\t\tTitleAlign:       pulumi.String(\"center\"),\n\t\t\t\t\t\tTitleSize:        pulumi.String(\"13\"),\n\t\t\t\t\t\tLiveSpan:         pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(38),\n\t\t\t\t\t\tWidth:  pulumi.Int(66),\n\t\t\t\t\t\tX:      pulumi.Int(33),\n\t\t\t\t\t\tY:      pulumi.Int(21),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tTimeseriesDefinition: \u0026datadog.DashboardWidgetTimeseriesDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetTimeseriesDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tFormulas: datadog.DashboardWidgetTimeseriesDefinitionRequestFormulaArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestFormulaArgs{\n\t\t\t\t\t\t\t\t\t\tFormulaExpression: pulumi.String(\"my_query_1 + my_query_2\"),\n\t\t\t\t\t\t\t\t\t\tAlias:             pulumi.String(\"my ff query\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestFormulaArgs{\n\t\t\t\t\t\t\t\t\t\tFormulaExpression: pulumi.String(\"my_query_1 * my_query_2\"),\n\t\t\t\t\t\t\t\t\t\tLimit: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestFormulaLimitArgs{\n\t\t\t\t\t\t\t\t\t\t\tCount: pulumi.Int(5),\n\t\t\t\t\t\t\t\t\t\t\tOrder: pulumi.String(\"desc\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tAlias: pulumi.String(\"my second ff query\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tQueries: datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArgs{\n\t\t\t\t\t\t\t\t\t\tMetricQuery: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs{\n\t\t\t\t\t\t\t\t\t\t\tDataSource: pulumi.String(\"metrics\"),\n\t\t\t\t\t\t\t\t\t\t\tQuery:      pulumi.String(\"avg:system.cpu.user{app:general} by {env}\"),\n\t\t\t\t\t\t\t\t\t\t\tName:       pulumi.String(\"my_query_1\"),\n\t\t\t\t\t\t\t\t\t\t\tAggregator: pulumi.String(\"sum\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArgs{\n\t\t\t\t\t\t\t\t\t\tMetricQuery: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs{\n\t\t\t\t\t\t\t\t\t\t\tQuery:      pulumi.String(\"avg:system.cpu.user{app:general} by {env}\"),\n\t\t\t\t\t\t\t\t\t\t\tName:       pulumi.String(\"my_query_2\"),\n\t\t\t\t\t\t\t\t\t\t\tAggregator: pulumi.String(\"sum\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(16),\n\t\t\t\t\t\tWidth:  pulumi.Int(25),\n\t\t\t\t\t\tX:      pulumi.Int(58),\n\t\t\t\t\t\tY:      pulumi.Int(83),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tTimeseriesDefinition: \u0026datadog.DashboardWidgetTimeseriesDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetTimeseriesDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQueries: datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArgs{\n\t\t\t\t\t\t\t\t\t\tEventQuery: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryArgs{\n\t\t\t\t\t\t\t\t\t\t\tName:       pulumi.String(\"my-query\"),\n\t\t\t\t\t\t\t\t\t\t\tDataSource: pulumi.String(\"logs\"),\n\t\t\t\t\t\t\t\t\t\t\tIndexes: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\t\t\tpulumi.String(\"days-3\"),\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tComputes: datadog.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeArray{\n\t\t\t\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeArgs{\n\t\t\t\t\t\t\t\t\t\t\t\t\tAggregation: pulumi.String(\"count\"),\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tGroupBies: datadog.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByArray{\n\t\t\t\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByArgs{\n\t\t\t\t\t\t\t\t\t\t\t\t\tFacet: pulumi.String(\"host\"),\n\t\t\t\t\t\t\t\t\t\t\t\t\tSort: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortArgs{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tMetric:      pulumi.String(\"@lambda.max_memory_used\"),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAggregation: pulumi.String(\"avg\"),\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\tLimit: pulumi.Int(10),\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tDisplayType: pulumi.String(\"overlay\"),\n\t\t\t\t\t\t\t\tQueries: datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArgs{\n\t\t\t\t\t\t\t\t\t\tMetricQuery: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs{\n\t\t\t\t\t\t\t\t\t\t\tName:       pulumi.String(\"MyOverlay\"),\n\t\t\t\t\t\t\t\t\t\t\tDataSource: pulumi.String(\"metrics\"),\n\t\t\t\t\t\t\t\t\t\t\tQuery:      pulumi.String(\"avg:system.cpu.user{host:COMP-QJWVM2FYT4}\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(16),\n\t\t\t\t\t\tWidth:  pulumi.Int(28),\n\t\t\t\t\t\tX:      pulumi.Int(29),\n\t\t\t\t\t\tY:      pulumi.Int(83),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tTimeseriesDefinition: \u0026datadog.DashboardWidgetTimeseriesDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetTimeseriesDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tQueries: datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArgs{\n\t\t\t\t\t\t\t\t\t\tProcessQuery: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryArgs{\n\t\t\t\t\t\t\t\t\t\t\tDataSource: pulumi.String(\"process\"),\n\t\t\t\t\t\t\t\t\t\t\tTextFilter: pulumi.String(\"abc\"),\n\t\t\t\t\t\t\t\t\t\t\tMetric:     pulumi.String(\"process.stat.cpu.total_pct\"),\n\t\t\t\t\t\t\t\t\t\t\tLimit:      pulumi.Int(10),\n\t\t\t\t\t\t\t\t\t\t\tTagFilters: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\t\t\tpulumi.String(\"some_filter\"),\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tName:            pulumi.String(\"my_process_query\"),\n\t\t\t\t\t\t\t\t\t\t\tSort:            pulumi.String(\"asc\"),\n\t\t\t\t\t\t\t\t\t\t\tIsNormalizedCpu: pulumi.Bool(true),\n\t\t\t\t\t\t\t\t\t\t\tAggregator:      pulumi.String(\"sum\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(16),\n\t\t\t\t\t\tWidth:  pulumi.Int(28),\n\t\t\t\t\t\tX:      pulumi.Int(0),\n\t\t\t\t\t\tY:      pulumi.Int(83),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tTimeseriesDefinition: \u0026datadog.DashboardWidgetTimeseriesDefinitionArgs{\n\t\t\t\t\t\tRequests: datadog.DashboardWidgetTimeseriesDefinitionRequestArray{\n\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestArgs{\n\t\t\t\t\t\t\t\tFormulas: datadog.DashboardWidgetTimeseriesDefinitionRequestFormulaArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestFormulaArgs{\n\t\t\t\t\t\t\t\t\t\tFormulaExpression: pulumi.String(\"query1\"),\n\t\t\t\t\t\t\t\t\t\tAlias:             pulumi.String(\"my cloud cost query\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tQueries: datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArray{\n\t\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryArgs{\n\t\t\t\t\t\t\t\t\t\tCloudCostQuery: \u0026datadog.DashboardWidgetTimeseriesDefinitionRequestQueryCloudCostQueryArgs{\n\t\t\t\t\t\t\t\t\t\t\tDataSource: pulumi.String(\"cloud_cost\"),\n\t\t\t\t\t\t\t\t\t\t\tQuery:      pulumi.String(\"sum:aws.cost.amortized{*}\"),\n\t\t\t\t\t\t\t\t\t\t\tName:       pulumi.String(\"query1\"),\n\t\t\t\t\t\t\t\t\t\t\tAggregator: pulumi.String(\"sum\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tPowerpackDefinition: \u0026datadog.DashboardWidgetPowerpackDefinitionArgs{\n\t\t\t\t\t\tPowerpackId:     pulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\t\t\t\tBackgroundColor: pulumi.String(\"blue\"),\n\t\t\t\t\t\tBannerImg:       pulumi.String(\"https://example.org/example.png\"),\n\t\t\t\t\t\tShowTitle:       pulumi.Bool(true),\n\t\t\t\t\t\tTitle:           pulumi.String(\"Powerpack Widget\"),\n\t\t\t\t\t\tTemplateVariables: \u0026datadog.DashboardWidgetPowerpackDefinitionTemplateVariablesArgs{\n\t\t\t\t\t\t\tControlledExternallies: datadog.DashboardWidgetPowerpackDefinitionTemplateVariablesControlledExternallyArray{\n\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetPowerpackDefinitionTemplateVariablesControlledExternallyArgs{\n\t\t\t\t\t\t\t\t\tName: pulumi.String(\"var_2\"),\n\t\t\t\t\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"autoscaling\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tPrefix: pulumi.String(\"service_name\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tControlledByPowerpacks: datadog.DashboardWidgetPowerpackDefinitionTemplateVariablesControlledByPowerpackArray{\n\t\t\t\t\t\t\t\t\u0026datadog.DashboardWidgetPowerpackDefinitionTemplateVariablesControlledByPowerpackArgs{\n\t\t\t\t\t\t\t\t\tName:   pulumi.String(\"var_3\"),\n\t\t\t\t\t\t\t\t\tPrefix: pulumi.String(\"timeframe\"),\n\t\t\t\t\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"default\"),\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"values\"),\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"here\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateVariables: datadog.DashboardTemplateVariableArray{\n\t\t\t\t\u0026datadog.DashboardTemplateVariableArgs{\n\t\t\t\t\tName:    pulumi.String(\"var_1\"),\n\t\t\t\t\tPrefix:  pulumi.String(\"host\"),\n\t\t\t\t\tDefault: pulumi.String(\"aws\"),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardTemplateVariableArgs{\n\t\t\t\t\tName:    pulumi.String(\"var_2\"),\n\t\t\t\t\tPrefix:  pulumi.String(\"service_name\"),\n\t\t\t\t\tDefault: pulumi.String(\"autoscaling\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTemplateVariablePresets: datadog.DashboardTemplateVariablePresetArray{\n\t\t\t\t\u0026datadog.DashboardTemplateVariablePresetArgs{\n\t\t\t\t\tName: pulumi.String(\"preset_1\"),\n\t\t\t\t\tTemplateVariables: datadog.DashboardTemplateVariablePresetTemplateVariableArray{\n\t\t\t\t\t\t\u0026datadog.DashboardTemplateVariablePresetTemplateVariableArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"var_1\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"host.dc\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026datadog.DashboardTemplateVariablePresetTemplateVariableArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"var_2\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"my_service\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Dashboard;\nimport com.pulumi.datadog.DashboardArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertGraphDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertValueDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetChangeDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetDistributionDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetCheckStatusDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHeatmapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHeatmapDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionRequestArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetHostmapDefinitionStyleArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetNoteDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetQueryValueDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetQueryTableDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionRequestArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionXaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetScatterplotDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetServicemapDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTimeseriesDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTimeseriesDefinitionYaxisArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetToplistDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetGroupDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetServiceLevelObjectiveDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardTemplateVariableArgs;\nimport com.pulumi.datadog.inputs.DashboardTemplateVariablePresetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetWidgetLayoutArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventTimelineDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetFreeTextDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetIframeDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetImageDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetLogStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetLogStreamDefinitionSortArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetManageStatusDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetTraceServiceDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetPowerpackDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetPowerpackDefinitionTemplateVariablesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Example Ordered Layout\n        var orderedDashboard = new Dashboard(\"orderedDashboard\", DashboardArgs.builder()\n            .title(\"Ordered Layout Dashboard\")\n            .description(\"Created using the Datadog provider in Pulumi\")\n            .layoutType(\"ordered\")\n            .widgets(            \n                DashboardWidgetArgs.builder()\n                    .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n                        .alertId(\"895605\")\n                        .vizType(\"timeseries\")\n                        .title(\"Widget Title\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .alertValueDefinition(DashboardWidgetAlertValueDefinitionArgs.builder()\n                        .alertId(\"895605\")\n                        .precision(3)\n                        .unit(\"b\")\n                        .textAlign(\"center\")\n                        .title(\"Widget Title\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .alertValueDefinition(DashboardWidgetAlertValueDefinitionArgs.builder()\n                        .alertId(\"895605\")\n                        .precision(3)\n                        .unit(\"b\")\n                        .textAlign(\"center\")\n                        .title(\"Widget Title\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .changeDefinition(DashboardWidgetChangeDefinitionArgs.builder()\n                        .requests(DashboardWidgetChangeDefinitionRequestArgs.builder()\n                            .q(\"avg:system.load.1{env:staging} by {account}\")\n                            .changeType(\"absolute\")\n                            .compareTo(\"week_before\")\n                            .increaseGood(true)\n                            .orderBy(\"name\")\n                            .orderDir(\"desc\")\n                            .showPresent(true)\n                            .build())\n                        .title(\"Widget Title\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .distributionDefinition(DashboardWidgetDistributionDefinitionArgs.builder()\n                        .requests(DashboardWidgetDistributionDefinitionRequestArgs.builder()\n                            .q(\"avg:system.load.1{env:staging} by {account}\")\n                            .style(DashboardWidgetDistributionDefinitionRequestStyleArgs.builder()\n                                .palette(\"warm\")\n                                .build())\n                            .build())\n                        .title(\"Widget Title\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .checkStatusDefinition(DashboardWidgetCheckStatusDefinitionArgs.builder()\n                        .check(\"aws.ecs.agent_connected\")\n                        .grouping(\"cluster\")\n                        .groupBies(                        \n                            \"account\",\n                            \"cluster\")\n                        .tags(                        \n                            \"account:demo\",\n                            \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\")\n                        .title(\"Widget Title\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .heatmapDefinition(DashboardWidgetHeatmapDefinitionArgs.builder()\n                        .requests(DashboardWidgetHeatmapDefinitionRequestArgs.builder()\n                            .q(\"avg:system.load.1{env:staging} by {account}\")\n                            .style(DashboardWidgetHeatmapDefinitionRequestStyleArgs.builder()\n                                .palette(\"warm\")\n                                .build())\n                            .build())\n                        .yaxis(DashboardWidgetHeatmapDefinitionYaxisArgs.builder()\n                            .min(\"1\")\n                            .max(\"2\")\n                            .includeZero(true)\n                            .scale(\"sqrt\")\n                            .build())\n                        .title(\"Widget Title\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .hostmapDefinition(DashboardWidgetHostmapDefinitionArgs.builder()\n                        .request(DashboardWidgetHostmapDefinitionRequestArgs.builder()\n                            .fills(DashboardWidgetHostmapDefinitionRequestFillArgs.builder()\n                                .q(\"avg:system.load.1{*} by {host}\")\n                                .build())\n                            .sizes(DashboardWidgetHostmapDefinitionRequestSizeArgs.builder()\n                                .q(\"avg:memcache.uptime{*} by {host}\")\n                                .build())\n                            .build())\n                        .nodeType(\"container\")\n                        .groups(                        \n                            \"host\",\n                            \"region\")\n                        .noGroupHosts(true)\n                        .noMetricHosts(true)\n                        .scopes(                        \n                            \"region:us-east-1\",\n                            \"aws_account:727006795293\")\n                        .style(DashboardWidgetHostmapDefinitionStyleArgs.builder()\n                            .palette(\"yellow_to_green\")\n                            .paletteFlip(true)\n                            .fillMin(\"10\")\n                            .fillMax(\"20\")\n                            .build())\n                        .title(\"Widget Title\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .noteDefinition(DashboardWidgetNoteDefinitionArgs.builder()\n                        .content(\"note text\")\n                        .backgroundColor(\"pink\")\n                        .fontSize(\"14\")\n                        .textAlign(\"center\")\n                        .showTick(true)\n                        .tickEdge(\"left\")\n                        .tickPos(\"50%\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .queryValueDefinition(DashboardWidgetQueryValueDefinitionArgs.builder()\n                        .requests(DashboardWidgetQueryValueDefinitionRequestArgs.builder()\n                            .q(\"avg:system.load.1{env:staging} by {account}\")\n                            .aggregator(\"sum\")\n                            .conditionalFormats(                            \n                                DashboardWidgetQueryValueDefinitionRequestConditionalFormatArgs.builder()\n                                    .comparator(\"\u003c\")\n                                    .value(2.0)\n                                    .palette(\"white_on_green\")\n                                    .build(),\n                                DashboardWidgetQueryValueDefinitionRequestConditionalFormatArgs.builder()\n                                    .comparator(\"\u003e\")\n                                    .value(2.2)\n                                    .palette(\"white_on_red\")\n                                    .build())\n                            .build())\n                        .autoscale(true)\n                        .customUnit(\"xx\")\n                        .precision(4)\n                        .textAlign(\"right\")\n                        .title(\"Widget Title\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .queryTableDefinition(DashboardWidgetQueryTableDefinitionArgs.builder()\n                        .requests(DashboardWidgetQueryTableDefinitionRequestArgs.builder()\n                            .q(\"avg:system.load.1{env:staging} by {account}\")\n                            .aggregator(\"sum\")\n                            .limit(10)\n                            .conditionalFormats(                            \n                                DashboardWidgetQueryTableDefinitionRequestConditionalFormatArgs.builder()\n                                    .comparator(\"\u003c\")\n                                    .value(2.0)\n                                    .palette(\"white_on_green\")\n                                    .build(),\n                                DashboardWidgetQueryTableDefinitionRequestConditionalFormatArgs.builder()\n                                    .comparator(\"\u003e\")\n                                    .value(2.2)\n                                    .palette(\"white_on_red\")\n                                    .build())\n                            .build())\n                        .title(\"Widget Title\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .scatterplotDefinition(DashboardWidgetScatterplotDefinitionArgs.builder()\n                        .request(DashboardWidgetScatterplotDefinitionRequestArgs.builder()\n                            .xes(DashboardWidgetScatterplotDefinitionRequestXArgs.builder()\n                                .q(\"avg:system.cpu.user{*} by {service, account}\")\n                                .aggregator(\"max\")\n                                .build())\n                            .ys(DashboardWidgetScatterplotDefinitionRequestYArgs.builder()\n                                .q(\"avg:system.mem.used{*} by {service, account}\")\n                                .aggregator(\"min\")\n                                .build())\n                            .build())\n                        .colorByGroups(                        \n                            \"account\",\n                            \"apm-role-group\")\n                        .xaxis(DashboardWidgetScatterplotDefinitionXaxisArgs.builder()\n                            .includeZero(true)\n                            .label(\"x\")\n                            .min(\"1\")\n                            .max(\"2000\")\n                            .scale(\"pow\")\n                            .build())\n                        .yaxis(DashboardWidgetScatterplotDefinitionYaxisArgs.builder()\n                            .includeZero(false)\n                            .label(\"y\")\n                            .min(\"5\")\n                            .max(\"2222\")\n                            .scale(\"log\")\n                            .build())\n                        .title(\"Widget Title\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .servicemapDefinition(DashboardWidgetServicemapDefinitionArgs.builder()\n                        .service(\"master-db\")\n                        .filters(                        \n                            \"env:prod\",\n                            \"datacenter:dc1\")\n                        .title(\"env: prod, datacenter:dc1, service: master-db\")\n                        .titleSize(\"16\")\n                        .titleAlign(\"left\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n                        .requests(                        \n                            DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                                .q(\"avg:system.cpu.user{app:general} by {env}\")\n                                .displayType(\"line\")\n                                .style(DashboardWidgetTimeseriesDefinitionRequestStyleArgs.builder()\n                                    .palette(\"warm\")\n                                    .lineType(\"dashed\")\n                                    .lineWidth(\"thin\")\n                                    .build())\n                                .metadatas(DashboardWidgetTimeseriesDefinitionRequestMetadataArgs.builder()\n                                    .expression(\"avg:system.cpu.user{app:general} by {env}\")\n                                    .aliasName(\"Alpha\")\n                                    .build())\n                                .build(),\n                            DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                                .logQuery(DashboardWidgetLogQueryArgs.builder()\n                                    .index(\"mcnulty\")\n                                    .computeQuery(DashboardWidgetLogQueryComputeQueryArgs.builder()\n                                        .aggregation(\"avg\")\n                                        .facet(\"@duration\")\n                                        .interval(5000)\n                                        .build())\n                                    .searchQuery(\"status:info\")\n                                    .groupBies(DashboardWidgetLogQueryGroupByArgs.builder()\n                                        .facet(\"host\")\n                                        .limit(10)\n                                        .sortQuery(DashboardWidgetLogQueryGroupBySortQueryArgs.builder()\n                                            .aggregation(\"avg\")\n                                            .order(\"desc\")\n                                            .facet(\"@duration\")\n                                            .build())\n                                        .build())\n                                    .build())\n                                .displayType(\"area\")\n                                .build(),\n                            DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                                .apmQuery(DashboardWidgetApmQueryArgs.builder()\n                                    .index(\"apm-search\")\n                                    .computeQuery(DashboardWidgetApmQueryComputeQueryArgs.builder()\n                                        .aggregation(\"avg\")\n                                        .facet(\"@duration\")\n                                        .interval(5000)\n                                        .build())\n                                    .searchQuery(\"type:web\")\n                                    .groupBies(DashboardWidgetApmQueryGroupByArgs.builder()\n                                        .facet(\"resource_name\")\n                                        .limit(50)\n                                        .sortQuery(DashboardWidgetApmQueryGroupBySortQueryArgs.builder()\n                                            .aggregation(\"avg\")\n                                            .order(\"desc\")\n                                            .facet(\"@string_query.interval\")\n                                            .build())\n                                        .build())\n                                    .build())\n                                .displayType(\"bars\")\n                                .build(),\n                            DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                                .processQuery(DashboardWidgetTimeseriesDefinitionRequestProcessQueryArgs.builder()\n                                    .metric(\"process.stat.cpu.total_pct\")\n                                    .searchBy(\"error\")\n                                    .filterBies(\"active\")\n                                    .limit(50)\n                                    .build())\n                                .displayType(\"area\")\n                                .build())\n                        .markers(                        \n                            DashboardWidgetTimeseriesDefinitionMarkerArgs.builder()\n                                .displayType(\"error dashed\")\n                                .label(\" z=6 \")\n                                .value(\"y = 4\")\n                                .build(),\n                            DashboardWidgetTimeseriesDefinitionMarkerArgs.builder()\n                                .displayType(\"ok solid\")\n                                .value(\"10 \u003c y \u003c 999\")\n                                .label(\" x=8 \")\n                                .build())\n                        .title(\"Widget Title\")\n                        .showLegend(true)\n                        .legendSize(\"2\")\n                        .liveSpan(\"1h\")\n                        .events(                        \n                            DashboardWidgetTimeseriesDefinitionEventArgs.builder()\n                                .q(\"sources:test tags:1\")\n                                .build(),\n                            DashboardWidgetTimeseriesDefinitionEventArgs.builder()\n                                .q(\"sources:test tags:2\")\n                                .build())\n                        .yaxis(DashboardWidgetTimeseriesDefinitionYaxisArgs.builder()\n                            .scale(\"log\")\n                            .includeZero(false)\n                            .max(\"100\")\n                            .build())\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .toplistDefinition(DashboardWidgetToplistDefinitionArgs.builder()\n                        .requests(DashboardWidgetToplistDefinitionRequestArgs.builder()\n                            .q(\"avg:system.cpu.user{app:general} by {env}\")\n                            .conditionalFormats(                            \n                                DashboardWidgetToplistDefinitionRequestConditionalFormatArgs.builder()\n                                    .comparator(\"\u003c\")\n                                    .value(2.0)\n                                    .palette(\"white_on_green\")\n                                    .build(),\n                                DashboardWidgetToplistDefinitionRequestConditionalFormatArgs.builder()\n                                    .comparator(\"\u003e\")\n                                    .value(2.2)\n                                    .palette(\"white_on_red\")\n                                    .build())\n                            .build())\n                        .title(\"Widget Title\")\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .groupDefinition(DashboardWidgetGroupDefinitionArgs.builder()\n                        .layoutType(\"ordered\")\n                        .title(\"Group Widget\")\n                        .widgets(                        \n                            DashboardWidgetGroupDefinitionWidgetArgs.builder()\n                                .noteDefinition(DashboardWidgetNoteDefinitionArgs.builder()\n                                    .content(\"cluster note widget\")\n                                    .backgroundColor(\"pink\")\n                                    .fontSize(\"14\")\n                                    .textAlign(\"center\")\n                                    .showTick(true)\n                                    .tickEdge(\"left\")\n                                    .tickPos(\"50%\")\n                                    .build())\n                                .build(),\n                            DashboardWidgetGroupDefinitionWidgetArgs.builder()\n                                .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n                                    .alertId(\"123\")\n                                    .vizType(\"toplist\")\n                                    .title(\"Alert Graph\")\n                                    .liveSpan(\"1h\")\n                                    .build())\n                                .build())\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .serviceLevelObjectiveDefinition(DashboardWidgetServiceLevelObjectiveDefinitionArgs.builder()\n                        .title(\"Widget Title\")\n                        .viewType(\"detail\")\n                        .sloId(\"56789\")\n                        .showErrorBudget(true)\n                        .viewMode(\"overall\")\n                        .timeWindows(                        \n                            \"7d\",\n                            \"previous_week\")\n                        .build())\n                    .build())\n            .templateVariables(            \n                DashboardTemplateVariableArgs.builder()\n                    .name(\"var_1\")\n                    .prefix(\"host\")\n                    .default_(\"aws\")\n                    .build(),\n                DashboardTemplateVariableArgs.builder()\n                    .name(\"var_2\")\n                    .prefix(\"service_name\")\n                    .default_(\"autoscaling\")\n                    .build())\n            .templateVariablePresets(DashboardTemplateVariablePresetArgs.builder()\n                .name(\"preset_1\")\n                .templateVariables(                \n                    DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n                        .name(\"var_1\")\n                        .value(\"host.dc\")\n                        .build(),\n                    DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n                        .name(\"var_2\")\n                        .value(\"my_service\")\n                        .build())\n                .build())\n            .build());\n\n        // Example Free Layout\n        var freeDashboard = new Dashboard(\"freeDashboard\", DashboardArgs.builder()\n            .title(\"Free Layout Dashboard\")\n            .description(\"Created using the Datadog provider in Pulumi\")\n            .layoutType(\"free\")\n            .widgets(            \n                DashboardWidgetArgs.builder()\n                    .eventStreamDefinition(DashboardWidgetEventStreamDefinitionArgs.builder()\n                        .query(\"*\")\n                        .eventSize(\"l\")\n                        .title(\"Widget Title\")\n                        .titleSize(\"16\")\n                        .titleAlign(\"left\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(43)\n                        .width(32)\n                        .x(0)\n                        .y(0)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .eventTimelineDefinition(DashboardWidgetEventTimelineDefinitionArgs.builder()\n                        .query(\"*\")\n                        .title(\"Widget Title\")\n                        .titleSize(\"16\")\n                        .titleAlign(\"left\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(9)\n                        .width(66)\n                        .x(33)\n                        .y(60)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .freeTextDefinition(DashboardWidgetFreeTextDefinitionArgs.builder()\n                        .text(\"free text content\")\n                        .color(\"#d00\")\n                        .fontSize(\"36\")\n                        .textAlign(\"left\")\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(20)\n                        .width(34)\n                        .x(33)\n                        .y(0)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .iframeDefinition(DashboardWidgetIframeDefinitionArgs.builder()\n                        .url(\"http://google.com\")\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(46)\n                        .width(39)\n                        .x(101)\n                        .y(0)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .imageDefinition(DashboardWidgetImageDefinitionArgs.builder()\n                        .url(\"https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\")\n                        .sizing(\"fit\")\n                        .margin(\"small\")\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(20)\n                        .width(30)\n                        .x(69)\n                        .y(0)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .logStreamDefinition(DashboardWidgetLogStreamDefinitionArgs.builder()\n                        .indexes(\"main\")\n                        .query(\"error\")\n                        .columns(                        \n                            \"core_host\",\n                            \"core_service\",\n                            \"tag_source\")\n                        .showDateColumn(true)\n                        .showMessageColumn(true)\n                        .messageDisplay(\"expanded-md\")\n                        .sort(DashboardWidgetLogStreamDefinitionSortArgs.builder()\n                            .column(\"time\")\n                            .order(\"desc\")\n                            .build())\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(36)\n                        .width(32)\n                        .x(0)\n                        .y(45)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .manageStatusDefinition(DashboardWidgetManageStatusDefinitionArgs.builder()\n                        .colorPreference(\"text\")\n                        .displayFormat(\"countsAndList\")\n                        .hideZeroCounts(true)\n                        .query(\"type:metric\")\n                        .showLastTriggered(false)\n                        .sort(\"status,asc\")\n                        .summaryType(\"monitors\")\n                        .title(\"Widget Title\")\n                        .titleSize(\"16\")\n                        .titleAlign(\"left\")\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(40)\n                        .width(30)\n                        .x(101)\n                        .y(48)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .traceServiceDefinition(DashboardWidgetTraceServiceDefinitionArgs.builder()\n                        .displayFormat(\"three_column\")\n                        .env(\"datadog.com\")\n                        .service(\"alerting-cassandra\")\n                        .showBreakdown(true)\n                        .showDistribution(true)\n                        .showErrors(true)\n                        .showHits(true)\n                        .showLatency(false)\n                        .showResourceList(false)\n                        .sizeFormat(\"large\")\n                        .spanName(\"cassandra.query\")\n                        .title(\"alerting-cassandra #env:datadog.com\")\n                        .titleAlign(\"center\")\n                        .titleSize(\"13\")\n                        .liveSpan(\"1h\")\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(38)\n                        .width(66)\n                        .x(33)\n                        .y(21)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n                        .requests(DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                            .formulas(                            \n                                DashboardWidgetTimeseriesDefinitionRequestFormulaArgs.builder()\n                                    .formulaExpression(\"my_query_1 + my_query_2\")\n                                    .alias(\"my ff query\")\n                                    .build(),\n                                DashboardWidgetTimeseriesDefinitionRequestFormulaArgs.builder()\n                                    .formulaExpression(\"my_query_1 * my_query_2\")\n                                    .limit(DashboardWidgetTimeseriesDefinitionRequestFormulaLimitArgs.builder()\n                                        .count(5)\n                                        .order(\"desc\")\n                                        .build())\n                                    .alias(\"my second ff query\")\n                                    .build())\n                            .queries(                            \n                                DashboardWidgetTimeseriesDefinitionRequestQueryArgs.builder()\n                                    .metricQuery(DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs.builder()\n                                        .dataSource(\"metrics\")\n                                        .query(\"avg:system.cpu.user{app:general} by {env}\")\n                                        .name(\"my_query_1\")\n                                        .aggregator(\"sum\")\n                                        .build())\n                                    .build(),\n                                DashboardWidgetTimeseriesDefinitionRequestQueryArgs.builder()\n                                    .metricQuery(DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs.builder()\n                                        .query(\"avg:system.cpu.user{app:general} by {env}\")\n                                        .name(\"my_query_2\")\n                                        .aggregator(\"sum\")\n                                        .build())\n                                    .build())\n                            .build())\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(16)\n                        .width(25)\n                        .x(58)\n                        .y(83)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n                        .requests(                        \n                            DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                                .queries(DashboardWidgetTimeseriesDefinitionRequestQueryArgs.builder()\n                                    .eventQuery(DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryArgs.builder()\n                                        .name(\"my-query\")\n                                        .dataSource(\"logs\")\n                                        .indexes(\"days-3\")\n                                        .computes(DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeArgs.builder()\n                                            .aggregation(\"count\")\n                                            .build())\n                                        .groupBies(DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByArgs.builder()\n                                            .facet(\"host\")\n                                            .sort(DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortArgs.builder()\n                                                .metric(\"@lambda.max_memory_used\")\n                                                .aggregation(\"avg\")\n                                                .build())\n                                            .limit(10)\n                                            .build())\n                                        .build())\n                                    .build())\n                                .build(),\n                            DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                                .displayType(\"overlay\")\n                                .queries(DashboardWidgetTimeseriesDefinitionRequestQueryArgs.builder()\n                                    .metricQuery(DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryArgs.builder()\n                                        .name(\"MyOverlay\")\n                                        .dataSource(\"metrics\")\n                                        .query(\"avg:system.cpu.user{host:COMP-QJWVM2FYT4}\")\n                                        .build())\n                                    .build())\n                                .build())\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(16)\n                        .width(28)\n                        .x(29)\n                        .y(83)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n                        .requests(DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                            .queries(DashboardWidgetTimeseriesDefinitionRequestQueryArgs.builder()\n                                .processQuery(DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryArgs.builder()\n                                    .dataSource(\"process\")\n                                    .textFilter(\"abc\")\n                                    .metric(\"process.stat.cpu.total_pct\")\n                                    .limit(10)\n                                    .tagFilters(\"some_filter\")\n                                    .name(\"my_process_query\")\n                                    .sort(\"asc\")\n                                    .isNormalizedCpu(true)\n                                    .aggregator(\"sum\")\n                                    .build())\n                                .build())\n                            .build())\n                        .build())\n                    .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                        .height(16)\n                        .width(28)\n                        .x(0)\n                        .y(83)\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .timeseriesDefinition(DashboardWidgetTimeseriesDefinitionArgs.builder()\n                        .requests(DashboardWidgetTimeseriesDefinitionRequestArgs.builder()\n                            .formulas(DashboardWidgetTimeseriesDefinitionRequestFormulaArgs.builder()\n                                .formulaExpression(\"query1\")\n                                .alias(\"my cloud cost query\")\n                                .build())\n                            .queries(DashboardWidgetTimeseriesDefinitionRequestQueryArgs.builder()\n                                .cloudCostQuery(DashboardWidgetTimeseriesDefinitionRequestQueryCloudCostQueryArgs.builder()\n                                    .dataSource(\"cloud_cost\")\n                                    .query(\"sum:aws.cost.amortized{*}\")\n                                    .name(\"query1\")\n                                    .aggregator(\"sum\")\n                                    .build())\n                                .build())\n                            .build())\n                        .build())\n                    .build(),\n                DashboardWidgetArgs.builder()\n                    .powerpackDefinition(DashboardWidgetPowerpackDefinitionArgs.builder()\n                        .powerpackId(\"00000000-0000-0000-0000-000000000000\")\n                        .backgroundColor(\"blue\")\n                        .bannerImg(\"https://example.org/example.png\")\n                        .showTitle(true)\n                        .title(\"Powerpack Widget\")\n                        .templateVariables(DashboardWidgetPowerpackDefinitionTemplateVariablesArgs.builder()\n                            .controlledExternallies(DashboardWidgetPowerpackDefinitionTemplateVariablesControlledExternallyArgs.builder()\n                                .name(\"var_2\")\n                                .values(\"autoscaling\")\n                                .prefix(\"service_name\")\n                                .build())\n                            .controlledByPowerpacks(DashboardWidgetPowerpackDefinitionTemplateVariablesControlledByPowerpackArgs.builder()\n                                .name(\"var_3\")\n                                .prefix(\"timeframe\")\n                                .values(                                \n                                    \"default\",\n                                    \"values\",\n                                    \"here\")\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n            .templateVariables(            \n                DashboardTemplateVariableArgs.builder()\n                    .name(\"var_1\")\n                    .prefix(\"host\")\n                    .default_(\"aws\")\n                    .build(),\n                DashboardTemplateVariableArgs.builder()\n                    .name(\"var_2\")\n                    .prefix(\"service_name\")\n                    .default_(\"autoscaling\")\n                    .build())\n            .templateVariablePresets(DashboardTemplateVariablePresetArgs.builder()\n                .name(\"preset_1\")\n                .templateVariables(                \n                    DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n                        .name(\"var_1\")\n                        .value(\"host.dc\")\n                        .build(),\n                    DashboardTemplateVariablePresetTemplateVariableArgs.builder()\n                        .name(\"var_2\")\n                        .value(\"my_service\")\n                        .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Example Ordered Layout\n  orderedDashboard:\n    type: datadog:Dashboard\n    name: ordered_dashboard\n    properties:\n      title: Ordered Layout Dashboard\n      description: Created using the Datadog provider in Pulumi\n      layoutType: ordered\n      widgets:\n        - alertGraphDefinition:\n            alertId: '895605'\n            vizType: timeseries\n            title: Widget Title\n            liveSpan: 1h\n        - alertValueDefinition:\n            alertId: '895605'\n            precision: 3\n            unit: b\n            textAlign: center\n            title: Widget Title\n        - alertValueDefinition:\n            alertId: '895605'\n            precision: 3\n            unit: b\n            textAlign: center\n            title: Widget Title\n        - changeDefinition:\n            requests:\n              - q: avg:system.load.1{env:staging} by {account}\n                changeType: absolute\n                compareTo: week_before\n                increaseGood: true\n                orderBy: name\n                orderDir: desc\n                showPresent: true\n            title: Widget Title\n            liveSpan: 1h\n        - distributionDefinition:\n            requests:\n              - q: avg:system.load.1{env:staging} by {account}\n                style:\n                  palette: warm\n            title: Widget Title\n            liveSpan: 1h\n        - checkStatusDefinition:\n            check: aws.ecs.agent_connected\n            grouping: cluster\n            groupBies:\n              - account\n              - cluster\n            tags:\n              - account:demo\n              - cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\n            title: Widget Title\n            liveSpan: 1h\n        - heatmapDefinition:\n            requests:\n              - q: avg:system.load.1{env:staging} by {account}\n                style:\n                  palette: warm\n            yaxis:\n              min: 1\n              max: 2\n              includeZero: true\n              scale: sqrt\n            title: Widget Title\n            liveSpan: 1h\n        - hostmapDefinition:\n            request:\n              fills:\n                - q: avg:system.load.1{*} by {host}\n              sizes:\n                - q: avg:memcache.uptime{*} by {host}\n            nodeType: container\n            groups:\n              - host\n              - region\n            noGroupHosts: true\n            noMetricHosts: true\n            scopes:\n              - region:us-east-1\n              - aws_account:727006795293\n            style:\n              palette: yellow_to_green\n              paletteFlip: true\n              fillMin: '10'\n              fillMax: '20'\n            title: Widget Title\n        - noteDefinition:\n            content: note text\n            backgroundColor: pink\n            fontSize: '14'\n            textAlign: center\n            showTick: true\n            tickEdge: left\n            tickPos: 50%\n        - queryValueDefinition:\n            requests:\n              - q: avg:system.load.1{env:staging} by {account}\n                aggregator: sum\n                conditionalFormats:\n                  - comparator: \u003c\n                    value: '2'\n                    palette: white_on_green\n                  - comparator: '\u003e'\n                    value: '2.2'\n                    palette: white_on_red\n            autoscale: true\n            customUnit: xx\n            precision: '4'\n            textAlign: right\n            title: Widget Title\n            liveSpan: 1h\n        - queryTableDefinition:\n            requests:\n              - q: avg:system.load.1{env:staging} by {account}\n                aggregator: sum\n                limit: '10'\n                conditionalFormats:\n                  - comparator: \u003c\n                    value: '2'\n                    palette: white_on_green\n                  - comparator: '\u003e'\n                    value: '2.2'\n                    palette: white_on_red\n            title: Widget Title\n            liveSpan: 1h\n        - scatterplotDefinition:\n            request:\n              xes:\n                - q: avg:system.cpu.user{*} by {service, account}\n                  aggregator: max\n              ys:\n                - q: avg:system.mem.used{*} by {service, account}\n                  aggregator: min\n            colorByGroups:\n              - account\n              - apm-role-group\n            xaxis:\n              includeZero: true\n              label: x\n              min: '1'\n              max: '2000'\n              scale: pow\n            yaxis:\n              includeZero: false\n              label: y\n              min: '5'\n              max: '2222'\n              scale: log\n            title: Widget Title\n            liveSpan: 1h\n        - servicemapDefinition:\n            service: master-db\n            filters:\n              - env:prod\n              - datacenter:dc1\n            title: 'env: prod, datacenter:dc1, service: master-db'\n            titleSize: '16'\n            titleAlign: left\n        - timeseriesDefinition:\n            requests:\n              - q: avg:system.cpu.user{app:general} by {env}\n                displayType: line\n                style:\n                  palette: warm\n                  lineType: dashed\n                  lineWidth: thin\n                metadatas:\n                  - expression: avg:system.cpu.user{app:general} by {env}\n                    aliasName: Alpha\n              - logQuery:\n                  index: mcnulty\n                  computeQuery:\n                    aggregation: avg\n                    facet: '@duration'\n                    interval: 5000\n                  searchQuery: status:info\n                  groupBies:\n                    - facet: host\n                      limit: 10\n                      sortQuery:\n                        aggregation: avg\n                        order: desc\n                        facet: '@duration'\n                displayType: area\n              - apmQuery:\n                  index: apm-search\n                  computeQuery:\n                    aggregation: avg\n                    facet: '@duration'\n                    interval: 5000\n                  searchQuery: type:web\n                  groupBies:\n                    - facet: resource_name\n                      limit: 50\n                      sortQuery:\n                        aggregation: avg\n                        order: desc\n                        facet: '@string_query.interval'\n                displayType: bars\n              - processQuery:\n                  metric: process.stat.cpu.total_pct\n                  searchBy: error\n                  filterBies:\n                    - active\n                  limit: 50\n                displayType: area\n            markers:\n              - displayType: error dashed\n                label: ' z=6 '\n                value: y = 4\n              - displayType: ok solid\n                value: 10 \u003c y \u003c 999\n                label: ' x=8 '\n            title: Widget Title\n            showLegend: true\n            legendSize: '2'\n            liveSpan: 1h\n            events:\n              - q: sources:test tags:1\n              - q: sources:test tags:2\n            yaxis:\n              scale: log\n              includeZero: false\n              max: 100\n        - toplistDefinition:\n            requests:\n              - q: avg:system.cpu.user{app:general} by {env}\n                conditionalFormats:\n                  - comparator: \u003c\n                    value: '2'\n                    palette: white_on_green\n                  - comparator: '\u003e'\n                    value: '2.2'\n                    palette: white_on_red\n            title: Widget Title\n        - groupDefinition:\n            layoutType: ordered\n            title: Group Widget\n            widgets:\n              - noteDefinition:\n                  content: cluster note widget\n                  backgroundColor: pink\n                  fontSize: '14'\n                  textAlign: center\n                  showTick: true\n                  tickEdge: left\n                  tickPos: 50%\n              - alertGraphDefinition:\n                  alertId: '123'\n                  vizType: toplist\n                  title: Alert Graph\n                  liveSpan: 1h\n        - serviceLevelObjectiveDefinition:\n            title: Widget Title\n            viewType: detail\n            sloId: '56789'\n            showErrorBudget: true\n            viewMode: overall\n            timeWindows:\n              - 7d\n              - previous_week\n      templateVariables:\n        - name: var_1\n          prefix: host\n          default: aws\n        - name: var_2\n          prefix: service_name\n          default: autoscaling\n      templateVariablePresets:\n        - name: preset_1\n          templateVariables:\n            - name: var_1\n              value: host.dc\n            - name: var_2\n              value: my_service\n  # Example Free Layout\n  freeDashboard:\n    type: datadog:Dashboard\n    name: free_dashboard\n    properties:\n      title: Free Layout Dashboard\n      description: Created using the Datadog provider in Pulumi\n      layoutType: free\n      widgets:\n        - eventStreamDefinition:\n            query: '*'\n            eventSize: l\n            title: Widget Title\n            titleSize: 16\n            titleAlign: left\n            liveSpan: 1h\n          widgetLayout:\n            height: 43\n            width: 32\n            x: 0\n            y: 0\n        - eventTimelineDefinition:\n            query: '*'\n            title: Widget Title\n            titleSize: 16\n            titleAlign: left\n            liveSpan: 1h\n          widgetLayout:\n            height: 9\n            width: 66\n            x: 33\n            y: 60\n        - freeTextDefinition:\n            text: free text content\n            color: '#d00'\n            fontSize: '36'\n            textAlign: left\n          widgetLayout:\n            height: 20\n            width: 34\n            x: 33\n            y: 0\n        - iframeDefinition:\n            url: http://google.com\n          widgetLayout:\n            height: 46\n            width: 39\n            x: 101\n            y: 0\n        - imageDefinition:\n            url: https://images.pexels.com/photos/67636/rose-blue-flower-rose-blooms-67636.jpeg?auto=compress\u0026cs=tinysrgb\u0026h=350\n            sizing: fit\n            margin: small\n          widgetLayout:\n            height: 20\n            width: 30\n            x: 69\n            y: 0\n        - logStreamDefinition:\n            indexes:\n              - main\n            query: error\n            columns:\n              - core_host\n              - core_service\n              - tag_source\n            showDateColumn: true\n            showMessageColumn: true\n            messageDisplay: expanded-md\n            sort:\n              column: time\n              order: desc\n          widgetLayout:\n            height: 36\n            width: 32\n            x: 0\n            y: 45\n        - manageStatusDefinition:\n            colorPreference: text\n            displayFormat: countsAndList\n            hideZeroCounts: true\n            query: type:metric\n            showLastTriggered: false\n            sort: status,asc\n            summaryType: monitors\n            title: Widget Title\n            titleSize: 16\n            titleAlign: left\n          widgetLayout:\n            height: 40\n            width: 30\n            x: 101\n            y: 48\n        - traceServiceDefinition:\n            displayFormat: three_column\n            env: datadog.com\n            service: alerting-cassandra\n            showBreakdown: true\n            showDistribution: true\n            showErrors: true\n            showHits: true\n            showLatency: false\n            showResourceList: false\n            sizeFormat: large\n            spanName: cassandra.query\n            title: 'alerting-cassandra #env:datadog.com'\n            titleAlign: center\n            titleSize: '13'\n            liveSpan: 1h\n          widgetLayout:\n            height: 38\n            width: 66\n            x: 33\n            y: 21\n        - timeseriesDefinition:\n            requests:\n              - formulas:\n                  - formulaExpression: my_query_1 + my_query_2\n                    alias: my ff query\n                  - formulaExpression: my_query_1 * my_query_2\n                    limit:\n                      count: 5\n                      order: desc\n                    alias: my second ff query\n                queries:\n                  - metricQuery:\n                      dataSource: metrics\n                      query: avg:system.cpu.user{app:general} by {env}\n                      name: my_query_1\n                      aggregator: sum\n                  - metricQuery:\n                      query: avg:system.cpu.user{app:general} by {env}\n                      name: my_query_2\n                      aggregator: sum\n          widgetLayout:\n            height: 16\n            width: 25\n            x: 58\n            y: 83\n        - timeseriesDefinition:\n            requests:\n              - queries:\n                  - eventQuery:\n                      name: my-query\n                      dataSource: logs\n                      indexes:\n                        - days-3\n                      computes:\n                        - aggregation: count\n                      groupBies:\n                        - facet: host\n                          sort:\n                            metric: '@lambda.max_memory_used'\n                            aggregation: avg\n                          limit: 10\n              - displayType: overlay\n                queries:\n                  - metricQuery:\n                      name: MyOverlay\n                      dataSource: metrics\n                      query: avg:system.cpu.user{host:COMP-QJWVM2FYT4}\n          widgetLayout:\n            height: 16\n            width: 28\n            x: 29\n            y: 83\n        - timeseriesDefinition:\n            requests:\n              - queries:\n                  - processQuery:\n                      dataSource: process\n                      textFilter: abc\n                      metric: process.stat.cpu.total_pct\n                      limit: 10\n                      tagFilters:\n                        - some_filter\n                      name: my_process_query\n                      sort: asc\n                      isNormalizedCpu: true\n                      aggregator: sum\n          widgetLayout:\n            height: 16\n            width: 28\n            x: 0\n            y: 83\n        - timeseriesDefinition:\n            requests:\n              - formulas:\n                  - formulaExpression: query1\n                    alias: my cloud cost query\n                queries:\n                  - cloudCostQuery:\n                      dataSource: cloud_cost\n                      query: sum:aws.cost.amortized{*}\n                      name: query1\n                      aggregator: sum\n        - powerpackDefinition:\n            powerpackId: 00000000-0000-0000-0000-000000000000\n            backgroundColor: blue\n            bannerImg: https://example.org/example.png\n            showTitle: true\n            title: Powerpack Widget\n            templateVariables:\n              controlledExternallies:\n                - name: var_2\n                  values:\n                    - autoscaling\n                  prefix: service_name\n              controlledByPowerpacks:\n                - name: var_3\n                  prefix: timeframe\n                  values:\n                    - default\n                    - values\n                    - here\n      templateVariables:\n        - name: var_1\n          prefix: host\n          default: aws\n        - name: var_2\n          prefix: service_name\n          default: autoscaling\n      templateVariablePresets:\n        - name: preset_1\n          templateVariables:\n            - name: var_1\n              value: host.dc\n            - name: var_2\n              value: my_service\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/dashboard:Dashboard my_service_dashboard sv7-gyh-kas\n```\n\n",
            "properties": {
                "dashboardLists": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "A list of dashboard lists this dashboard belongs to. This attribute should not be set if managing the corresponding dashboard lists using Terraform as it causes inconsistent behavior.\n"
                },
                "dashboardListsRemoveds": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "A list of dashboard lists this dashboard should be removed from. Internal only.\n"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the dashboard.\n"
                },
                "isReadOnly": {
                    "type": "boolean",
                    "description": "Whether this dashboard is read-only. **Deprecated.** This field is deprecated and non-functional. Use \u003cspan pulumi-lang-nodejs=\"`restrictedRoles`\" pulumi-lang-dotnet=\"`RestrictedRoles`\" pulumi-lang-go=\"`restrictedRoles`\" pulumi-lang-python=\"`restricted_roles`\" pulumi-lang-yaml=\"`restrictedRoles`\" pulumi-lang-java=\"`restrictedRoles`\"\u003e`restrictedRoles`\u003c/span\u003e instead to define which roles are required to edit the dashboard. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n",
                    "deprecationMessage": "This field is deprecated and non-functional. Use \u003cspan pulumi-lang-nodejs=\"`restrictedRoles`\" pulumi-lang-dotnet=\"`RestrictedRoles`\" pulumi-lang-go=\"`restrictedRoles`\" pulumi-lang-python=\"`restricted_roles`\" pulumi-lang-yaml=\"`restrictedRoles`\" pulumi-lang-java=\"`restrictedRoles`\"\u003e`restrictedRoles`\u003c/span\u003e instead to define which roles are required to edit the dashboard."
                },
                "layoutType": {
                    "type": "string",
                    "description": "The layout type of the dashboard. Valid values are \u003cspan pulumi-lang-nodejs=\"`ordered`\" pulumi-lang-dotnet=\"`Ordered`\" pulumi-lang-go=\"`ordered`\" pulumi-lang-python=\"`ordered`\" pulumi-lang-yaml=\"`ordered`\" pulumi-lang-java=\"`ordered`\"\u003e`ordered`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`free`\" pulumi-lang-dotnet=\"`Free`\" pulumi-lang-go=\"`free`\" pulumi-lang-python=\"`free`\" pulumi-lang-yaml=\"`free`\" pulumi-lang-java=\"`free`\"\u003e`free`\u003c/span\u003e.\n"
                },
                "notifyLists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of handles for the users to notify when changes are made to this dashboard.\n"
                },
                "reflowType": {
                    "type": "string",
                    "description": "The reflow type of a new dashboard layout. Set this only when layout type is \u003cspan pulumi-lang-nodejs=\"`ordered`\" pulumi-lang-dotnet=\"`Ordered`\" pulumi-lang-go=\"`ordered`\" pulumi-lang-python=\"`ordered`\" pulumi-lang-yaml=\"`ordered`\" pulumi-lang-java=\"`ordered`\"\u003e`ordered`\u003c/span\u003e. If set to \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e, the dashboard expects all widgets to have a layout, and if it's set to \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, widgets should not have layouts. Valid values are \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e.\n"
                },
                "restrictedRoles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "UUIDs of roles whose associated users are authorized to edit the dashboard.\n"
                },
                "tabs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardTab:DashboardTab"
                    },
                    "description": "The list of tabs for organizing widgets on the dashboard.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags assigned to the Dashboard. Only team names of the form `team:\u003cname\u003e` are supported.\n"
                },
                "templateVariablePresets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardTemplateVariablePreset:DashboardTemplateVariablePreset"
                    },
                    "description": "The list of selectable template variable presets for this dashboard.\n"
                },
                "templateVariables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardTemplateVariable:DashboardTemplateVariable"
                    },
                    "description": "The list of template variables for this dashboard.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the dashboard.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL of the dashboard.\n"
                },
                "widgets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidget:DashboardWidget"
                    },
                    "description": "The list of widgets to display on the dashboard.\n"
                }
            },
            "required": [
                "dashboardListsRemoveds",
                "layoutType",
                "title",
                "url"
            ],
            "inputProperties": {
                "dashboardLists": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "A list of dashboard lists this dashboard belongs to. This attribute should not be set if managing the corresponding dashboard lists using Terraform as it causes inconsistent behavior.\n"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the dashboard.\n"
                },
                "isReadOnly": {
                    "type": "boolean",
                    "description": "Whether this dashboard is read-only. **Deprecated.** This field is deprecated and non-functional. Use \u003cspan pulumi-lang-nodejs=\"`restrictedRoles`\" pulumi-lang-dotnet=\"`RestrictedRoles`\" pulumi-lang-go=\"`restrictedRoles`\" pulumi-lang-python=\"`restricted_roles`\" pulumi-lang-yaml=\"`restrictedRoles`\" pulumi-lang-java=\"`restrictedRoles`\"\u003e`restrictedRoles`\u003c/span\u003e instead to define which roles are required to edit the dashboard. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n",
                    "deprecationMessage": "This field is deprecated and non-functional. Use \u003cspan pulumi-lang-nodejs=\"`restrictedRoles`\" pulumi-lang-dotnet=\"`RestrictedRoles`\" pulumi-lang-go=\"`restrictedRoles`\" pulumi-lang-python=\"`restricted_roles`\" pulumi-lang-yaml=\"`restrictedRoles`\" pulumi-lang-java=\"`restrictedRoles`\"\u003e`restrictedRoles`\u003c/span\u003e instead to define which roles are required to edit the dashboard."
                },
                "layoutType": {
                    "type": "string",
                    "description": "The layout type of the dashboard. Valid values are \u003cspan pulumi-lang-nodejs=\"`ordered`\" pulumi-lang-dotnet=\"`Ordered`\" pulumi-lang-go=\"`ordered`\" pulumi-lang-python=\"`ordered`\" pulumi-lang-yaml=\"`ordered`\" pulumi-lang-java=\"`ordered`\"\u003e`ordered`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`free`\" pulumi-lang-dotnet=\"`Free`\" pulumi-lang-go=\"`free`\" pulumi-lang-python=\"`free`\" pulumi-lang-yaml=\"`free`\" pulumi-lang-java=\"`free`\"\u003e`free`\u003c/span\u003e.\n",
                    "willReplaceOnChanges": true
                },
                "notifyLists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of handles for the users to notify when changes are made to this dashboard.\n"
                },
                "reflowType": {
                    "type": "string",
                    "description": "The reflow type of a new dashboard layout. Set this only when layout type is \u003cspan pulumi-lang-nodejs=\"`ordered`\" pulumi-lang-dotnet=\"`Ordered`\" pulumi-lang-go=\"`ordered`\" pulumi-lang-python=\"`ordered`\" pulumi-lang-yaml=\"`ordered`\" pulumi-lang-java=\"`ordered`\"\u003e`ordered`\u003c/span\u003e. If set to \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e, the dashboard expects all widgets to have a layout, and if it's set to \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, widgets should not have layouts. Valid values are \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e.\n"
                },
                "restrictedRoles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "UUIDs of roles whose associated users are authorized to edit the dashboard.\n"
                },
                "tabs": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardTab:DashboardTab"
                    },
                    "description": "The list of tabs for organizing widgets on the dashboard.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags assigned to the Dashboard. Only team names of the form `team:\u003cname\u003e` are supported.\n"
                },
                "templateVariablePresets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardTemplateVariablePreset:DashboardTemplateVariablePreset"
                    },
                    "description": "The list of selectable template variable presets for this dashboard.\n"
                },
                "templateVariables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardTemplateVariable:DashboardTemplateVariable"
                    },
                    "description": "The list of template variables for this dashboard.\n"
                },
                "title": {
                    "type": "string",
                    "description": "The title of the dashboard.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL of the dashboard.\n"
                },
                "widgets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardWidget:DashboardWidget"
                    },
                    "description": "The list of widgets to display on the dashboard.\n"
                }
            },
            "requiredInputs": [
                "layoutType",
                "title"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Dashboard resources.\n",
                "properties": {
                    "dashboardLists": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "description": "A list of dashboard lists this dashboard belongs to. This attribute should not be set if managing the corresponding dashboard lists using Terraform as it causes inconsistent behavior.\n"
                    },
                    "dashboardListsRemoveds": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "description": "A list of dashboard lists this dashboard should be removed from. Internal only.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "The description of the dashboard.\n"
                    },
                    "isReadOnly": {
                        "type": "boolean",
                        "description": "Whether this dashboard is read-only. **Deprecated.** This field is deprecated and non-functional. Use \u003cspan pulumi-lang-nodejs=\"`restrictedRoles`\" pulumi-lang-dotnet=\"`RestrictedRoles`\" pulumi-lang-go=\"`restrictedRoles`\" pulumi-lang-python=\"`restricted_roles`\" pulumi-lang-yaml=\"`restrictedRoles`\" pulumi-lang-java=\"`restrictedRoles`\"\u003e`restrictedRoles`\u003c/span\u003e instead to define which roles are required to edit the dashboard. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n",
                        "deprecationMessage": "This field is deprecated and non-functional. Use \u003cspan pulumi-lang-nodejs=\"`restrictedRoles`\" pulumi-lang-dotnet=\"`RestrictedRoles`\" pulumi-lang-go=\"`restrictedRoles`\" pulumi-lang-python=\"`restricted_roles`\" pulumi-lang-yaml=\"`restrictedRoles`\" pulumi-lang-java=\"`restrictedRoles`\"\u003e`restrictedRoles`\u003c/span\u003e instead to define which roles are required to edit the dashboard."
                    },
                    "layoutType": {
                        "type": "string",
                        "description": "The layout type of the dashboard. Valid values are \u003cspan pulumi-lang-nodejs=\"`ordered`\" pulumi-lang-dotnet=\"`Ordered`\" pulumi-lang-go=\"`ordered`\" pulumi-lang-python=\"`ordered`\" pulumi-lang-yaml=\"`ordered`\" pulumi-lang-java=\"`ordered`\"\u003e`ordered`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`free`\" pulumi-lang-dotnet=\"`Free`\" pulumi-lang-go=\"`free`\" pulumi-lang-python=\"`free`\" pulumi-lang-yaml=\"`free`\" pulumi-lang-java=\"`free`\"\u003e`free`\u003c/span\u003e.\n",
                        "willReplaceOnChanges": true
                    },
                    "notifyLists": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The list of handles for the users to notify when changes are made to this dashboard.\n"
                    },
                    "reflowType": {
                        "type": "string",
                        "description": "The reflow type of a new dashboard layout. Set this only when layout type is \u003cspan pulumi-lang-nodejs=\"`ordered`\" pulumi-lang-dotnet=\"`Ordered`\" pulumi-lang-go=\"`ordered`\" pulumi-lang-python=\"`ordered`\" pulumi-lang-yaml=\"`ordered`\" pulumi-lang-java=\"`ordered`\"\u003e`ordered`\u003c/span\u003e. If set to \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e, the dashboard expects all widgets to have a layout, and if it's set to \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, widgets should not have layouts. Valid values are \u003cspan pulumi-lang-nodejs=\"`auto`\" pulumi-lang-dotnet=\"`Auto`\" pulumi-lang-go=\"`auto`\" pulumi-lang-python=\"`auto`\" pulumi-lang-yaml=\"`auto`\" pulumi-lang-java=\"`auto`\"\u003e`auto`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e.\n"
                    },
                    "restrictedRoles": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "UUIDs of roles whose associated users are authorized to edit the dashboard.\n"
                    },
                    "tabs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/DashboardTab:DashboardTab"
                        },
                        "description": "The list of tabs for organizing widgets on the dashboard.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of tags assigned to the Dashboard. Only team names of the form `team:\u003cname\u003e` are supported.\n"
                    },
                    "templateVariablePresets": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/DashboardTemplateVariablePreset:DashboardTemplateVariablePreset"
                        },
                        "description": "The list of selectable template variable presets for this dashboard.\n"
                    },
                    "templateVariables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/DashboardTemplateVariable:DashboardTemplateVariable"
                        },
                        "description": "The list of template variables for this dashboard.\n"
                    },
                    "title": {
                        "type": "string",
                        "description": "The title of the dashboard.\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "The URL of the dashboard.\n"
                    },
                    "widgets": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/DashboardWidget:DashboardWidget"
                        },
                        "description": "The list of widgets to display on the dashboard.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/dashboardJson:DashboardJson": {
            "description": "Provides a Datadog dashboard JSON resource. This can be used to create and manage Datadog dashboards using the JSON definition.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Example Dashboard JSON\nconst dashboardJson = new datadog.DashboardJson(\"dashboard_json\", {dashboard: `{\n   \"title\":\"Ordered Layout Dashboard\",\n   \"description\":\"Created using the Datadog provider in Pulumi\",\n   \"widgets\":[\n      {\n         \"id\":719369537777170,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_graph\",\n            \"alert_id\":\"895605\",\n            \"viz_type\":\"timeseries\"\n         }\n      },\n      {\n         \"id\":2306240030393868,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_value\",\n            \"alert_id\":\"895605\",\n            \"unit\":\"b\",\n            \"text_align\":\"center\",\n            \"precision\":3\n         }\n      },\n      {\n         \"id\":6990998850881326,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_value\",\n            \"alert_id\":\"895605\",\n            \"unit\":\"b\",\n            \"text_align\":\"center\",\n            \"precision\":3\n         }\n      },\n      {\n         \"id\":3351284044659007,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"change\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"compare_to\":\"week_before\",\n                  \"change_type\":\"absolute\",\n                  \"order_dir\":\"desc\",\n                  \"increase_good\":true,\n                  \"order_by\":\"name\",\n                  \"show_present\":true\n               }\n            ]\n         }\n      },\n      {\n         \"id\":6450290622996182,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":false,\n            \"type\":\"distribution\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"style\":{\n                     \"palette\":\"warm\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":4902842646291536,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"check_status\",\n            \"check\":\"aws.ecs.agent_connected\",\n            \"grouping\":\"cluster\",\n            \"group_by\":[\n               \"account\",\n               \"cluster\"\n            ],\n            \"tags\":[\n               \"account:demo\",\n               \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n            ]\n         }\n      },\n      {\n         \"id\":6392349954822644,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":false,\n            \"type\":\"heatmap\",\n            \"yaxis\":{\n               \"scale\":\"sqrt\",\n               \"include_zero\":true,\n               \"min\":\"1\",\n               \"max\":\"2\"\n            },\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"style\":{\n                     \"palette\":\"warm\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":5222961478940988,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"hostmap\",\n            \"requests\":{\n               \"fill\":{\n                  \"q\":\"avg:system.load.1{*} by {host}\"\n               },\n               \"size\":{\n                  \"q\":\"avg:memcache.uptime{*} by {host}\"\n               }\n            },\n            \"node_type\":\"container\",\n            \"no_metric_hosts\":true,\n            \"no_group_hosts\":true,\n            \"group\":[\n               \"host\",\n               \"region\"\n            ],\n            \"scope\":[\n               \"region:us-east-1\",\n               \"aws_account:727006795293\"\n            ],\n            \"style\":{\n               \"palette\":\"yellow_to_green\",\n               \"palette_flip\":true,\n               \"fill_min\":\"10\",\n               \"fill_max\":\"20\"\n            }\n         }\n      },\n      {\n         \"id\":8121199734227072,\n         \"definition\":{\n            \"type\":\"note\",\n            \"content\":\"note text\",\n            \"background_color\":\"pink\",\n            \"font_size\":\"14\",\n            \"text_align\":\"center\",\n            \"show_tick\":true,\n            \"tick_pos\":\"50%\",\n            \"tick_edge\":\"left\"\n         }\n      },\n      {\n         \"id\":1775856835833038,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"query_value\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"aggregator\":\"sum\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ]\n               }\n            ],\n            \"autoscale\":true,\n            \"custom_unit\":\"xx\",\n            \"text_align\":\"right\",\n            \"precision\":4\n         }\n      },\n      {\n         \"id\":8461455966625581,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"query_table\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"aggregator\":\"sum\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ],\n                  \"limit\":10\n               }\n            ]\n         }\n      },\n      {\n         \"id\":8660006349418736,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"scatterplot\",\n            \"requests\":{\n               \"x\":{\n                  \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n                  \"aggregator\":\"max\"\n               },\n               \"y\":{\n                  \"q\":\"avg:system.mem.used{*} by {service, account}\",\n                  \"aggregator\":\"min\"\n               }\n            },\n            \"xaxis\":{\n               \"scale\":\"pow\",\n               \"label\":\"x\",\n               \"include_zero\":true,\n               \"min\":\"1\",\n               \"max\":\"2000\"\n            },\n            \"yaxis\":{\n               \"scale\":\"log\",\n               \"label\":\"y\",\n               \"include_zero\":false,\n               \"min\":\"5\",\n               \"max\":\"2222\"\n            },\n            \"color_by_groups\":[\n               \"account\",\n               \"apm-role-group\"\n            ]\n         }\n      },\n      {\n         \"id\":1669590772917638,\n         \"definition\":{\n            \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n            \"title_size\":\"16\",\n            \"title_align\":\"left\",\n            \"type\":\"servicemap\",\n            \"service\":\"master-db\",\n            \"filters\":[\n               \"env:prod\",\n               \"datacenter:dc1\"\n            ]\n         }\n      },\n      {\n         \"id\":2138829058361817,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":true,\n            \"legend_size\":\"2\",\n            \"type\":\"timeseries\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                  \"on_right_yaxis\":false,\n                  \"metadata\":[\n                     {\n                        \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n                        \"alias_name\":\"Alpha\"\n                     }\n                  ],\n                  \"style\":{\n                     \"palette\":\"warm\",\n                     \"line_type\":\"dashed\",\n                     \"line_width\":\"thin\"\n                  },\n                  \"display_type\":\"line\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"log_query\":{\n                     \"index\":\"mcnulty\",\n                     \"search\":{\n                        \"query\":\"status:info\"\n                     },\n                     \"group_by\":[\n                        {\n                           \"facet\":\"host\",\n                           \"sort\":{\n                              \"facet\":\"@duration\",\n                              \"aggregation\":\"avg\",\n                              \"order\":\"desc\"\n                           },\n                           \"limit\":10\n                        }\n                     ],\n                     \"compute\":{\n                        \"facet\":\"@duration\",\n                        \"interval\":5000,\n                        \"aggregation\":\"avg\"\n                     }\n                  },\n                  \"display_type\":\"area\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"apm_query\":{\n                     \"index\":\"apm-search\",\n                     \"search\":{\n                        \"query\":\"type:web\"\n                     },\n                     \"group_by\":[\n                        {\n                           \"facet\":\"resource_name\",\n                           \"sort\":{\n                              \"facet\":\"@string_query.interval\",\n                              \"aggregation\":\"avg\",\n                              \"order\":\"desc\"\n                           },\n                           \"limit\":50\n                        }\n                     ],\n                     \"compute\":{\n                        \"facet\":\"@duration\",\n                        \"interval\":5000,\n                        \"aggregation\":\"avg\"\n                     }\n                  },\n                  \"display_type\":\"bars\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"process_query\":{\n                     \"search_by\":\"error\",\n                     \"metric\":\"process.stat.cpu.total_pct\",\n                     \"limit\":50,\n                     \"filter_by\":[\n                        \"active\"\n                     ]\n                  },\n                  \"display_type\":\"area\"\n               }\n            ],\n            \"yaxis\":{\n               \"scale\":\"log\",\n               \"include_zero\":false,\n               \"max\":\"100\"\n            },\n            \"events\":[\n               {\n                  \"q\":\"sources:test tags:1\"\n               },\n               {\n                  \"q\":\"sources:test tags:2\"\n               }\n            ],\n            \"markers\":[\n               {\n                  \"label\":\" z=6 \",\n                  \"value\":\"y = 4\",\n                  \"display_type\":\"error dashed\"\n               },\n               {\n                  \"label\":\" x=8 \",\n                  \"value\":\"10 \u003c y \u003c 999\",\n                  \"display_type\":\"ok solid\"\n               }\n            ]\n         }\n      },\n      {\n         \"id\":7307171374656551,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"toplist\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ]\n               }\n            ]\n         }\n      },\n      {\n         \"id\":7086674838553258,\n         \"definition\":{\n            \"title\":\"Group Widget\",\n            \"type\":\"group\",\n            \"layout_type\":\"ordered\",\n            \"widgets\":[\n               {\n                  \"id\":3726092277657502,\n                  \"definition\":{\n                     \"type\":\"note\",\n                     \"content\":\"cluster note widget\",\n                     \"background_color\":\"pink\",\n                     \"font_size\":\"14\",\n                     \"text_align\":\"center\",\n                     \"show_tick\":true,\n                     \"tick_pos\":\"50%\",\n                     \"tick_edge\":\"left\"\n                  }\n               },\n               {\n                  \"id\":6376384650558057,\n                  \"definition\":{\n                     \"title\":\"Alert Graph\",\n                     \"type\":\"alert_graph\",\n                     \"alert_id\":\"123\",\n                     \"viz_type\":\"toplist\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":4668903563678912,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"slo\",\n            \"view_type\":\"detail\",\n            \"time_windows\":[\n               \"7d\",\n               \"previous_week\"\n            ],\n            \"slo_id\":\"56789\",\n            \"show_error_budget\":true,\n            \"view_mode\":\"overall\",\n            \"global_time_target\":\"0\"\n         }\n      }\n   ],\n   \"template_variables\":[\n      {\n         \"name\":\"var_1\",\n         \"default\":\"aws\",\n         \"prefix\":\"host\"\n      },\n      {\n         \"name\":\"var_2\",\n         \"default\":\"autoscaling\",\n         \"prefix\":\"service_name\"\n      }\n   ],\n   \"layout_type\":\"ordered\",\n   \"notify_list\":[\n\n   ],\n   \"template_variable_presets\":[\n      {\n         \"name\":\"preset_1\",\n         \"template_variables\":[\n            {\n               \"name\":\"var_1\",\n               \"value\":\"host.dc\"\n            },\n            {\n               \"name\":\"var_2\",\n               \"value\":\"my_service\"\n            }\n         ]\n      }\n   ]\n}\n`});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Example Dashboard JSON\ndashboard_json = datadog.DashboardJson(\"dashboard_json\", dashboard=\"\"\"{\n   \"title\":\"Ordered Layout Dashboard\",\n   \"description\":\"Created using the Datadog provider in Pulumi\",\n   \"widgets\":[\n      {\n         \"id\":719369537777170,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_graph\",\n            \"alert_id\":\"895605\",\n            \"viz_type\":\"timeseries\"\n         }\n      },\n      {\n         \"id\":2306240030393868,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_value\",\n            \"alert_id\":\"895605\",\n            \"unit\":\"b\",\n            \"text_align\":\"center\",\n            \"precision\":3\n         }\n      },\n      {\n         \"id\":6990998850881326,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_value\",\n            \"alert_id\":\"895605\",\n            \"unit\":\"b\",\n            \"text_align\":\"center\",\n            \"precision\":3\n         }\n      },\n      {\n         \"id\":3351284044659007,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"change\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"compare_to\":\"week_before\",\n                  \"change_type\":\"absolute\",\n                  \"order_dir\":\"desc\",\n                  \"increase_good\":true,\n                  \"order_by\":\"name\",\n                  \"show_present\":true\n               }\n            ]\n         }\n      },\n      {\n         \"id\":6450290622996182,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":false,\n            \"type\":\"distribution\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"style\":{\n                     \"palette\":\"warm\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":4902842646291536,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"check_status\",\n            \"check\":\"aws.ecs.agent_connected\",\n            \"grouping\":\"cluster\",\n            \"group_by\":[\n               \"account\",\n               \"cluster\"\n            ],\n            \"tags\":[\n               \"account:demo\",\n               \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n            ]\n         }\n      },\n      {\n         \"id\":6392349954822644,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":false,\n            \"type\":\"heatmap\",\n            \"yaxis\":{\n               \"scale\":\"sqrt\",\n               \"include_zero\":true,\n               \"min\":\"1\",\n               \"max\":\"2\"\n            },\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"style\":{\n                     \"palette\":\"warm\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":5222961478940988,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"hostmap\",\n            \"requests\":{\n               \"fill\":{\n                  \"q\":\"avg:system.load.1{*} by {host}\"\n               },\n               \"size\":{\n                  \"q\":\"avg:memcache.uptime{*} by {host}\"\n               }\n            },\n            \"node_type\":\"container\",\n            \"no_metric_hosts\":true,\n            \"no_group_hosts\":true,\n            \"group\":[\n               \"host\",\n               \"region\"\n            ],\n            \"scope\":[\n               \"region:us-east-1\",\n               \"aws_account:727006795293\"\n            ],\n            \"style\":{\n               \"palette\":\"yellow_to_green\",\n               \"palette_flip\":true,\n               \"fill_min\":\"10\",\n               \"fill_max\":\"20\"\n            }\n         }\n      },\n      {\n         \"id\":8121199734227072,\n         \"definition\":{\n            \"type\":\"note\",\n            \"content\":\"note text\",\n            \"background_color\":\"pink\",\n            \"font_size\":\"14\",\n            \"text_align\":\"center\",\n            \"show_tick\":true,\n            \"tick_pos\":\"50%\",\n            \"tick_edge\":\"left\"\n         }\n      },\n      {\n         \"id\":1775856835833038,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"query_value\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"aggregator\":\"sum\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ]\n               }\n            ],\n            \"autoscale\":true,\n            \"custom_unit\":\"xx\",\n            \"text_align\":\"right\",\n            \"precision\":4\n         }\n      },\n      {\n         \"id\":8461455966625581,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"query_table\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"aggregator\":\"sum\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ],\n                  \"limit\":10\n               }\n            ]\n         }\n      },\n      {\n         \"id\":8660006349418736,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"scatterplot\",\n            \"requests\":{\n               \"x\":{\n                  \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n                  \"aggregator\":\"max\"\n               },\n               \"y\":{\n                  \"q\":\"avg:system.mem.used{*} by {service, account}\",\n                  \"aggregator\":\"min\"\n               }\n            },\n            \"xaxis\":{\n               \"scale\":\"pow\",\n               \"label\":\"x\",\n               \"include_zero\":true,\n               \"min\":\"1\",\n               \"max\":\"2000\"\n            },\n            \"yaxis\":{\n               \"scale\":\"log\",\n               \"label\":\"y\",\n               \"include_zero\":false,\n               \"min\":\"5\",\n               \"max\":\"2222\"\n            },\n            \"color_by_groups\":[\n               \"account\",\n               \"apm-role-group\"\n            ]\n         }\n      },\n      {\n         \"id\":1669590772917638,\n         \"definition\":{\n            \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n            \"title_size\":\"16\",\n            \"title_align\":\"left\",\n            \"type\":\"servicemap\",\n            \"service\":\"master-db\",\n            \"filters\":[\n               \"env:prod\",\n               \"datacenter:dc1\"\n            ]\n         }\n      },\n      {\n         \"id\":2138829058361817,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":true,\n            \"legend_size\":\"2\",\n            \"type\":\"timeseries\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                  \"on_right_yaxis\":false,\n                  \"metadata\":[\n                     {\n                        \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n                        \"alias_name\":\"Alpha\"\n                     }\n                  ],\n                  \"style\":{\n                     \"palette\":\"warm\",\n                     \"line_type\":\"dashed\",\n                     \"line_width\":\"thin\"\n                  },\n                  \"display_type\":\"line\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"log_query\":{\n                     \"index\":\"mcnulty\",\n                     \"search\":{\n                        \"query\":\"status:info\"\n                     },\n                     \"group_by\":[\n                        {\n                           \"facet\":\"host\",\n                           \"sort\":{\n                              \"facet\":\"@duration\",\n                              \"aggregation\":\"avg\",\n                              \"order\":\"desc\"\n                           },\n                           \"limit\":10\n                        }\n                     ],\n                     \"compute\":{\n                        \"facet\":\"@duration\",\n                        \"interval\":5000,\n                        \"aggregation\":\"avg\"\n                     }\n                  },\n                  \"display_type\":\"area\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"apm_query\":{\n                     \"index\":\"apm-search\",\n                     \"search\":{\n                        \"query\":\"type:web\"\n                     },\n                     \"group_by\":[\n                        {\n                           \"facet\":\"resource_name\",\n                           \"sort\":{\n                              \"facet\":\"@string_query.interval\",\n                              \"aggregation\":\"avg\",\n                              \"order\":\"desc\"\n                           },\n                           \"limit\":50\n                        }\n                     ],\n                     \"compute\":{\n                        \"facet\":\"@duration\",\n                        \"interval\":5000,\n                        \"aggregation\":\"avg\"\n                     }\n                  },\n                  \"display_type\":\"bars\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"process_query\":{\n                     \"search_by\":\"error\",\n                     \"metric\":\"process.stat.cpu.total_pct\",\n                     \"limit\":50,\n                     \"filter_by\":[\n                        \"active\"\n                     ]\n                  },\n                  \"display_type\":\"area\"\n               }\n            ],\n            \"yaxis\":{\n               \"scale\":\"log\",\n               \"include_zero\":false,\n               \"max\":\"100\"\n            },\n            \"events\":[\n               {\n                  \"q\":\"sources:test tags:1\"\n               },\n               {\n                  \"q\":\"sources:test tags:2\"\n               }\n            ],\n            \"markers\":[\n               {\n                  \"label\":\" z=6 \",\n                  \"value\":\"y = 4\",\n                  \"display_type\":\"error dashed\"\n               },\n               {\n                  \"label\":\" x=8 \",\n                  \"value\":\"10 \u003c y \u003c 999\",\n                  \"display_type\":\"ok solid\"\n               }\n            ]\n         }\n      },\n      {\n         \"id\":7307171374656551,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"toplist\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ]\n               }\n            ]\n         }\n      },\n      {\n         \"id\":7086674838553258,\n         \"definition\":{\n            \"title\":\"Group Widget\",\n            \"type\":\"group\",\n            \"layout_type\":\"ordered\",\n            \"widgets\":[\n               {\n                  \"id\":3726092277657502,\n                  \"definition\":{\n                     \"type\":\"note\",\n                     \"content\":\"cluster note widget\",\n                     \"background_color\":\"pink\",\n                     \"font_size\":\"14\",\n                     \"text_align\":\"center\",\n                     \"show_tick\":true,\n                     \"tick_pos\":\"50%\",\n                     \"tick_edge\":\"left\"\n                  }\n               },\n               {\n                  \"id\":6376384650558057,\n                  \"definition\":{\n                     \"title\":\"Alert Graph\",\n                     \"type\":\"alert_graph\",\n                     \"alert_id\":\"123\",\n                     \"viz_type\":\"toplist\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":4668903563678912,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"slo\",\n            \"view_type\":\"detail\",\n            \"time_windows\":[\n               \"7d\",\n               \"previous_week\"\n            ],\n            \"slo_id\":\"56789\",\n            \"show_error_budget\":true,\n            \"view_mode\":\"overall\",\n            \"global_time_target\":\"0\"\n         }\n      }\n   ],\n   \"template_variables\":[\n      {\n         \"name\":\"var_1\",\n         \"default\":\"aws\",\n         \"prefix\":\"host\"\n      },\n      {\n         \"name\":\"var_2\",\n         \"default\":\"autoscaling\",\n         \"prefix\":\"service_name\"\n      }\n   ],\n   \"layout_type\":\"ordered\",\n   \"notify_list\":[\n\n   ],\n   \"template_variable_presets\":[\n      {\n         \"name\":\"preset_1\",\n         \"template_variables\":[\n            {\n               \"name\":\"var_1\",\n               \"value\":\"host.dc\"\n            },\n            {\n               \"name\":\"var_2\",\n               \"value\":\"my_service\"\n            }\n         ]\n      }\n   ]\n}\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Example Dashboard JSON\n    var dashboardJson = new Datadog.DashboardJson(\"dashboard_json\", new()\n    {\n        Dashboard = @\"{\n   \"\"title\"\":\"\"Ordered Layout Dashboard\"\",\n   \"\"description\"\":\"\"Created using the Datadog provider in Pulumi\"\",\n   \"\"widgets\"\":[\n      {\n         \"\"id\"\":719369537777170,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"alert_graph\"\",\n            \"\"alert_id\"\":\"\"895605\"\",\n            \"\"viz_type\"\":\"\"timeseries\"\"\n         }\n      },\n      {\n         \"\"id\"\":2306240030393868,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"alert_value\"\",\n            \"\"alert_id\"\":\"\"895605\"\",\n            \"\"unit\"\":\"\"b\"\",\n            \"\"text_align\"\":\"\"center\"\",\n            \"\"precision\"\":3\n         }\n      },\n      {\n         \"\"id\"\":6990998850881326,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"alert_value\"\",\n            \"\"alert_id\"\":\"\"895605\"\",\n            \"\"unit\"\":\"\"b\"\",\n            \"\"text_align\"\":\"\"center\"\",\n            \"\"precision\"\":3\n         }\n      },\n      {\n         \"\"id\"\":3351284044659007,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"change\"\",\n            \"\"requests\"\":[\n               {\n                  \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n                  \"\"compare_to\"\":\"\"week_before\"\",\n                  \"\"change_type\"\":\"\"absolute\"\",\n                  \"\"order_dir\"\":\"\"desc\"\",\n                  \"\"increase_good\"\":true,\n                  \"\"order_by\"\":\"\"name\"\",\n                  \"\"show_present\"\":true\n               }\n            ]\n         }\n      },\n      {\n         \"\"id\"\":6450290622996182,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"show_legend\"\":false,\n            \"\"type\"\":\"\"distribution\"\",\n            \"\"requests\"\":[\n               {\n                  \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n                  \"\"style\"\":{\n                     \"\"palette\"\":\"\"warm\"\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"\"id\"\":4902842646291536,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"check_status\"\",\n            \"\"check\"\":\"\"aws.ecs.agent_connected\"\",\n            \"\"grouping\"\":\"\"cluster\"\",\n            \"\"group_by\"\":[\n               \"\"account\"\",\n               \"\"cluster\"\"\n            ],\n            \"\"tags\"\":[\n               \"\"account:demo\"\",\n               \"\"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\"\n            ]\n         }\n      },\n      {\n         \"\"id\"\":6392349954822644,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"show_legend\"\":false,\n            \"\"type\"\":\"\"heatmap\"\",\n            \"\"yaxis\"\":{\n               \"\"scale\"\":\"\"sqrt\"\",\n               \"\"include_zero\"\":true,\n               \"\"min\"\":\"\"1\"\",\n               \"\"max\"\":\"\"2\"\"\n            },\n            \"\"requests\"\":[\n               {\n                  \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n                  \"\"style\"\":{\n                     \"\"palette\"\":\"\"warm\"\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"\"id\"\":5222961478940988,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"hostmap\"\",\n            \"\"requests\"\":{\n               \"\"fill\"\":{\n                  \"\"q\"\":\"\"avg:system.load.1{*} by {host}\"\"\n               },\n               \"\"size\"\":{\n                  \"\"q\"\":\"\"avg:memcache.uptime{*} by {host}\"\"\n               }\n            },\n            \"\"node_type\"\":\"\"container\"\",\n            \"\"no_metric_hosts\"\":true,\n            \"\"no_group_hosts\"\":true,\n            \"\"group\"\":[\n               \"\"host\"\",\n               \"\"region\"\"\n            ],\n            \"\"scope\"\":[\n               \"\"region:us-east-1\"\",\n               \"\"aws_account:727006795293\"\"\n            ],\n            \"\"style\"\":{\n               \"\"palette\"\":\"\"yellow_to_green\"\",\n               \"\"palette_flip\"\":true,\n               \"\"fill_min\"\":\"\"10\"\",\n               \"\"fill_max\"\":\"\"20\"\"\n            }\n         }\n      },\n      {\n         \"\"id\"\":8121199734227072,\n         \"\"definition\"\":{\n            \"\"type\"\":\"\"note\"\",\n            \"\"content\"\":\"\"note text\"\",\n            \"\"background_color\"\":\"\"pink\"\",\n            \"\"font_size\"\":\"\"14\"\",\n            \"\"text_align\"\":\"\"center\"\",\n            \"\"show_tick\"\":true,\n            \"\"tick_pos\"\":\"\"50%\"\",\n            \"\"tick_edge\"\":\"\"left\"\"\n         }\n      },\n      {\n         \"\"id\"\":1775856835833038,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"query_value\"\",\n            \"\"requests\"\":[\n               {\n                  \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n                  \"\"aggregator\"\":\"\"sum\"\",\n                  \"\"conditional_formats\"\":[\n                     {\n                        \"\"hide_value\"\":false,\n                        \"\"comparator\"\":\"\"\u003c\"\",\n                        \"\"palette\"\":\"\"white_on_green\"\",\n                        \"\"value\"\":2\n                     },\n                     {\n                        \"\"hide_value\"\":false,\n                        \"\"comparator\"\":\"\"\u003e\"\",\n                        \"\"palette\"\":\"\"white_on_red\"\",\n                        \"\"value\"\":2.2\n                     }\n                  ]\n               }\n            ],\n            \"\"autoscale\"\":true,\n            \"\"custom_unit\"\":\"\"xx\"\",\n            \"\"text_align\"\":\"\"right\"\",\n            \"\"precision\"\":4\n         }\n      },\n      {\n         \"\"id\"\":8461455966625581,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"query_table\"\",\n            \"\"requests\"\":[\n               {\n                  \"\"q\"\":\"\"avg:system.load.1{env:staging} by {account}\"\",\n                  \"\"aggregator\"\":\"\"sum\"\",\n                  \"\"conditional_formats\"\":[\n                     {\n                        \"\"hide_value\"\":false,\n                        \"\"comparator\"\":\"\"\u003c\"\",\n                        \"\"palette\"\":\"\"white_on_green\"\",\n                        \"\"value\"\":2\n                     },\n                     {\n                        \"\"hide_value\"\":false,\n                        \"\"comparator\"\":\"\"\u003e\"\",\n                        \"\"palette\"\":\"\"white_on_red\"\",\n                        \"\"value\"\":2.2\n                     }\n                  ],\n                  \"\"limit\"\":10\n               }\n            ]\n         }\n      },\n      {\n         \"\"id\"\":8660006349418736,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"scatterplot\"\",\n            \"\"requests\"\":{\n               \"\"x\"\":{\n                  \"\"q\"\":\"\"avg:system.cpu.user{*} by {service, account}\"\",\n                  \"\"aggregator\"\":\"\"max\"\"\n               },\n               \"\"y\"\":{\n                  \"\"q\"\":\"\"avg:system.mem.used{*} by {service, account}\"\",\n                  \"\"aggregator\"\":\"\"min\"\"\n               }\n            },\n            \"\"xaxis\"\":{\n               \"\"scale\"\":\"\"pow\"\",\n               \"\"label\"\":\"\"x\"\",\n               \"\"include_zero\"\":true,\n               \"\"min\"\":\"\"1\"\",\n               \"\"max\"\":\"\"2000\"\"\n            },\n            \"\"yaxis\"\":{\n               \"\"scale\"\":\"\"log\"\",\n               \"\"label\"\":\"\"y\"\",\n               \"\"include_zero\"\":false,\n               \"\"min\"\":\"\"5\"\",\n               \"\"max\"\":\"\"2222\"\"\n            },\n            \"\"color_by_groups\"\":[\n               \"\"account\"\",\n               \"\"apm-role-group\"\"\n            ]\n         }\n      },\n      {\n         \"\"id\"\":1669590772917638,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"env: prod, datacenter:dc1, service: master-db\"\",\n            \"\"title_size\"\":\"\"16\"\",\n            \"\"title_align\"\":\"\"left\"\",\n            \"\"type\"\":\"\"servicemap\"\",\n            \"\"service\"\":\"\"master-db\"\",\n            \"\"filters\"\":[\n               \"\"env:prod\"\",\n               \"\"datacenter:dc1\"\"\n            ]\n         }\n      },\n      {\n         \"\"id\"\":2138829058361817,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"show_legend\"\":true,\n            \"\"legend_size\"\":\"\"2\"\",\n            \"\"type\"\":\"\"timeseries\"\",\n            \"\"requests\"\":[\n               {\n                  \"\"q\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n                  \"\"on_right_yaxis\"\":false,\n                  \"\"metadata\"\":[\n                     {\n                        \"\"expression\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n                        \"\"alias_name\"\":\"\"Alpha\"\"\n                     }\n                  ],\n                  \"\"style\"\":{\n                     \"\"palette\"\":\"\"warm\"\",\n                     \"\"line_type\"\":\"\"dashed\"\",\n                     \"\"line_width\"\":\"\"thin\"\"\n                  },\n                  \"\"display_type\"\":\"\"line\"\"\n               },\n               {\n                  \"\"on_right_yaxis\"\":false,\n                  \"\"log_query\"\":{\n                     \"\"index\"\":\"\"mcnulty\"\",\n                     \"\"search\"\":{\n                        \"\"query\"\":\"\"status:info\"\"\n                     },\n                     \"\"group_by\"\":[\n                        {\n                           \"\"facet\"\":\"\"host\"\",\n                           \"\"sort\"\":{\n                              \"\"facet\"\":\"\"@duration\"\",\n                              \"\"aggregation\"\":\"\"avg\"\",\n                              \"\"order\"\":\"\"desc\"\"\n                           },\n                           \"\"limit\"\":10\n                        }\n                     ],\n                     \"\"compute\"\":{\n                        \"\"facet\"\":\"\"@duration\"\",\n                        \"\"interval\"\":5000,\n                        \"\"aggregation\"\":\"\"avg\"\"\n                     }\n                  },\n                  \"\"display_type\"\":\"\"area\"\"\n               },\n               {\n                  \"\"on_right_yaxis\"\":false,\n                  \"\"apm_query\"\":{\n                     \"\"index\"\":\"\"apm-search\"\",\n                     \"\"search\"\":{\n                        \"\"query\"\":\"\"type:web\"\"\n                     },\n                     \"\"group_by\"\":[\n                        {\n                           \"\"facet\"\":\"\"resource_name\"\",\n                           \"\"sort\"\":{\n                              \"\"facet\"\":\"\"@string_query.interval\"\",\n                              \"\"aggregation\"\":\"\"avg\"\",\n                              \"\"order\"\":\"\"desc\"\"\n                           },\n                           \"\"limit\"\":50\n                        }\n                     ],\n                     \"\"compute\"\":{\n                        \"\"facet\"\":\"\"@duration\"\",\n                        \"\"interval\"\":5000,\n                        \"\"aggregation\"\":\"\"avg\"\"\n                     }\n                  },\n                  \"\"display_type\"\":\"\"bars\"\"\n               },\n               {\n                  \"\"on_right_yaxis\"\":false,\n                  \"\"process_query\"\":{\n                     \"\"search_by\"\":\"\"error\"\",\n                     \"\"metric\"\":\"\"process.stat.cpu.total_pct\"\",\n                     \"\"limit\"\":50,\n                     \"\"filter_by\"\":[\n                        \"\"active\"\"\n                     ]\n                  },\n                  \"\"display_type\"\":\"\"area\"\"\n               }\n            ],\n            \"\"yaxis\"\":{\n               \"\"scale\"\":\"\"log\"\",\n               \"\"include_zero\"\":false,\n               \"\"max\"\":\"\"100\"\"\n            },\n            \"\"events\"\":[\n               {\n                  \"\"q\"\":\"\"sources:test tags:1\"\"\n               },\n               {\n                  \"\"q\"\":\"\"sources:test tags:2\"\"\n               }\n            ],\n            \"\"markers\"\":[\n               {\n                  \"\"label\"\":\"\" z=6 \"\",\n                  \"\"value\"\":\"\"y = 4\"\",\n                  \"\"display_type\"\":\"\"error dashed\"\"\n               },\n               {\n                  \"\"label\"\":\"\" x=8 \"\",\n                  \"\"value\"\":\"\"10 \u003c y \u003c 999\"\",\n                  \"\"display_type\"\":\"\"ok solid\"\"\n               }\n            ]\n         }\n      },\n      {\n         \"\"id\"\":7307171374656551,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"toplist\"\",\n            \"\"requests\"\":[\n               {\n                  \"\"q\"\":\"\"avg:system.cpu.user{app:general} by {env}\"\",\n                  \"\"conditional_formats\"\":[\n                     {\n                        \"\"hide_value\"\":false,\n                        \"\"comparator\"\":\"\"\u003c\"\",\n                        \"\"palette\"\":\"\"white_on_green\"\",\n                        \"\"value\"\":2\n                     },\n                     {\n                        \"\"hide_value\"\":false,\n                        \"\"comparator\"\":\"\"\u003e\"\",\n                        \"\"palette\"\":\"\"white_on_red\"\",\n                        \"\"value\"\":2.2\n                     }\n                  ]\n               }\n            ]\n         }\n      },\n      {\n         \"\"id\"\":7086674838553258,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Group Widget\"\",\n            \"\"type\"\":\"\"group\"\",\n            \"\"layout_type\"\":\"\"ordered\"\",\n            \"\"widgets\"\":[\n               {\n                  \"\"id\"\":3726092277657502,\n                  \"\"definition\"\":{\n                     \"\"type\"\":\"\"note\"\",\n                     \"\"content\"\":\"\"cluster note widget\"\",\n                     \"\"background_color\"\":\"\"pink\"\",\n                     \"\"font_size\"\":\"\"14\"\",\n                     \"\"text_align\"\":\"\"center\"\",\n                     \"\"show_tick\"\":true,\n                     \"\"tick_pos\"\":\"\"50%\"\",\n                     \"\"tick_edge\"\":\"\"left\"\"\n                  }\n               },\n               {\n                  \"\"id\"\":6376384650558057,\n                  \"\"definition\"\":{\n                     \"\"title\"\":\"\"Alert Graph\"\",\n                     \"\"type\"\":\"\"alert_graph\"\",\n                     \"\"alert_id\"\":\"\"123\"\",\n                     \"\"viz_type\"\":\"\"toplist\"\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"\"id\"\":4668903563678912,\n         \"\"definition\"\":{\n            \"\"title\"\":\"\"Widget Title\"\",\n            \"\"type\"\":\"\"slo\"\",\n            \"\"view_type\"\":\"\"detail\"\",\n            \"\"time_windows\"\":[\n               \"\"7d\"\",\n               \"\"previous_week\"\"\n            ],\n            \"\"slo_id\"\":\"\"56789\"\",\n            \"\"show_error_budget\"\":true,\n            \"\"view_mode\"\":\"\"overall\"\",\n            \"\"global_time_target\"\":\"\"0\"\"\n         }\n      }\n   ],\n   \"\"template_variables\"\":[\n      {\n         \"\"name\"\":\"\"var_1\"\",\n         \"\"default\"\":\"\"aws\"\",\n         \"\"prefix\"\":\"\"host\"\"\n      },\n      {\n         \"\"name\"\":\"\"var_2\"\",\n         \"\"default\"\":\"\"autoscaling\"\",\n         \"\"prefix\"\":\"\"service_name\"\"\n      }\n   ],\n   \"\"layout_type\"\":\"\"ordered\"\",\n   \"\"notify_list\"\":[\n\n   ],\n   \"\"template_variable_presets\"\":[\n      {\n         \"\"name\"\":\"\"preset_1\"\",\n         \"\"template_variables\"\":[\n            {\n               \"\"name\"\":\"\"var_1\"\",\n               \"\"value\"\":\"\"host.dc\"\"\n            },\n            {\n               \"\"name\"\":\"\"var_2\"\",\n               \"\"value\"\":\"\"my_service\"\"\n            }\n         ]\n      }\n   ]\n}\n\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Example Dashboard JSON\n\t\t_, err := datadog.NewDashboardJson(ctx, \"dashboard_json\", \u0026datadog.DashboardJsonArgs{\n\t\t\tDashboard: pulumi.String(`{\n   \"title\":\"Ordered Layout Dashboard\",\n   \"description\":\"Created using the Datadog provider in Pulumi\",\n   \"widgets\":[\n      {\n         \"id\":719369537777170,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_graph\",\n            \"alert_id\":\"895605\",\n            \"viz_type\":\"timeseries\"\n         }\n      },\n      {\n         \"id\":2306240030393868,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_value\",\n            \"alert_id\":\"895605\",\n            \"unit\":\"b\",\n            \"text_align\":\"center\",\n            \"precision\":3\n         }\n      },\n      {\n         \"id\":6990998850881326,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_value\",\n            \"alert_id\":\"895605\",\n            \"unit\":\"b\",\n            \"text_align\":\"center\",\n            \"precision\":3\n         }\n      },\n      {\n         \"id\":3351284044659007,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"change\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"compare_to\":\"week_before\",\n                  \"change_type\":\"absolute\",\n                  \"order_dir\":\"desc\",\n                  \"increase_good\":true,\n                  \"order_by\":\"name\",\n                  \"show_present\":true\n               }\n            ]\n         }\n      },\n      {\n         \"id\":6450290622996182,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":false,\n            \"type\":\"distribution\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"style\":{\n                     \"palette\":\"warm\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":4902842646291536,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"check_status\",\n            \"check\":\"aws.ecs.agent_connected\",\n            \"grouping\":\"cluster\",\n            \"group_by\":[\n               \"account\",\n               \"cluster\"\n            ],\n            \"tags\":[\n               \"account:demo\",\n               \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n            ]\n         }\n      },\n      {\n         \"id\":6392349954822644,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":false,\n            \"type\":\"heatmap\",\n            \"yaxis\":{\n               \"scale\":\"sqrt\",\n               \"include_zero\":true,\n               \"min\":\"1\",\n               \"max\":\"2\"\n            },\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"style\":{\n                     \"palette\":\"warm\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":5222961478940988,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"hostmap\",\n            \"requests\":{\n               \"fill\":{\n                  \"q\":\"avg:system.load.1{*} by {host}\"\n               },\n               \"size\":{\n                  \"q\":\"avg:memcache.uptime{*} by {host}\"\n               }\n            },\n            \"node_type\":\"container\",\n            \"no_metric_hosts\":true,\n            \"no_group_hosts\":true,\n            \"group\":[\n               \"host\",\n               \"region\"\n            ],\n            \"scope\":[\n               \"region:us-east-1\",\n               \"aws_account:727006795293\"\n            ],\n            \"style\":{\n               \"palette\":\"yellow_to_green\",\n               \"palette_flip\":true,\n               \"fill_min\":\"10\",\n               \"fill_max\":\"20\"\n            }\n         }\n      },\n      {\n         \"id\":8121199734227072,\n         \"definition\":{\n            \"type\":\"note\",\n            \"content\":\"note text\",\n            \"background_color\":\"pink\",\n            \"font_size\":\"14\",\n            \"text_align\":\"center\",\n            \"show_tick\":true,\n            \"tick_pos\":\"50%\",\n            \"tick_edge\":\"left\"\n         }\n      },\n      {\n         \"id\":1775856835833038,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"query_value\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"aggregator\":\"sum\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ]\n               }\n            ],\n            \"autoscale\":true,\n            \"custom_unit\":\"xx\",\n            \"text_align\":\"right\",\n            \"precision\":4\n         }\n      },\n      {\n         \"id\":8461455966625581,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"query_table\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"aggregator\":\"sum\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ],\n                  \"limit\":10\n               }\n            ]\n         }\n      },\n      {\n         \"id\":8660006349418736,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"scatterplot\",\n            \"requests\":{\n               \"x\":{\n                  \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n                  \"aggregator\":\"max\"\n               },\n               \"y\":{\n                  \"q\":\"avg:system.mem.used{*} by {service, account}\",\n                  \"aggregator\":\"min\"\n               }\n            },\n            \"xaxis\":{\n               \"scale\":\"pow\",\n               \"label\":\"x\",\n               \"include_zero\":true,\n               \"min\":\"1\",\n               \"max\":\"2000\"\n            },\n            \"yaxis\":{\n               \"scale\":\"log\",\n               \"label\":\"y\",\n               \"include_zero\":false,\n               \"min\":\"5\",\n               \"max\":\"2222\"\n            },\n            \"color_by_groups\":[\n               \"account\",\n               \"apm-role-group\"\n            ]\n         }\n      },\n      {\n         \"id\":1669590772917638,\n         \"definition\":{\n            \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n            \"title_size\":\"16\",\n            \"title_align\":\"left\",\n            \"type\":\"servicemap\",\n            \"service\":\"master-db\",\n            \"filters\":[\n               \"env:prod\",\n               \"datacenter:dc1\"\n            ]\n         }\n      },\n      {\n         \"id\":2138829058361817,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":true,\n            \"legend_size\":\"2\",\n            \"type\":\"timeseries\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                  \"on_right_yaxis\":false,\n                  \"metadata\":[\n                     {\n                        \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n                        \"alias_name\":\"Alpha\"\n                     }\n                  ],\n                  \"style\":{\n                     \"palette\":\"warm\",\n                     \"line_type\":\"dashed\",\n                     \"line_width\":\"thin\"\n                  },\n                  \"display_type\":\"line\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"log_query\":{\n                     \"index\":\"mcnulty\",\n                     \"search\":{\n                        \"query\":\"status:info\"\n                     },\n                     \"group_by\":[\n                        {\n                           \"facet\":\"host\",\n                           \"sort\":{\n                              \"facet\":\"@duration\",\n                              \"aggregation\":\"avg\",\n                              \"order\":\"desc\"\n                           },\n                           \"limit\":10\n                        }\n                     ],\n                     \"compute\":{\n                        \"facet\":\"@duration\",\n                        \"interval\":5000,\n                        \"aggregation\":\"avg\"\n                     }\n                  },\n                  \"display_type\":\"area\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"apm_query\":{\n                     \"index\":\"apm-search\",\n                     \"search\":{\n                        \"query\":\"type:web\"\n                     },\n                     \"group_by\":[\n                        {\n                           \"facet\":\"resource_name\",\n                           \"sort\":{\n                              \"facet\":\"@string_query.interval\",\n                              \"aggregation\":\"avg\",\n                              \"order\":\"desc\"\n                           },\n                           \"limit\":50\n                        }\n                     ],\n                     \"compute\":{\n                        \"facet\":\"@duration\",\n                        \"interval\":5000,\n                        \"aggregation\":\"avg\"\n                     }\n                  },\n                  \"display_type\":\"bars\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"process_query\":{\n                     \"search_by\":\"error\",\n                     \"metric\":\"process.stat.cpu.total_pct\",\n                     \"limit\":50,\n                     \"filter_by\":[\n                        \"active\"\n                     ]\n                  },\n                  \"display_type\":\"area\"\n               }\n            ],\n            \"yaxis\":{\n               \"scale\":\"log\",\n               \"include_zero\":false,\n               \"max\":\"100\"\n            },\n            \"events\":[\n               {\n                  \"q\":\"sources:test tags:1\"\n               },\n               {\n                  \"q\":\"sources:test tags:2\"\n               }\n            ],\n            \"markers\":[\n               {\n                  \"label\":\" z=6 \",\n                  \"value\":\"y = 4\",\n                  \"display_type\":\"error dashed\"\n               },\n               {\n                  \"label\":\" x=8 \",\n                  \"value\":\"10 \u003c y \u003c 999\",\n                  \"display_type\":\"ok solid\"\n               }\n            ]\n         }\n      },\n      {\n         \"id\":7307171374656551,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"toplist\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ]\n               }\n            ]\n         }\n      },\n      {\n         \"id\":7086674838553258,\n         \"definition\":{\n            \"title\":\"Group Widget\",\n            \"type\":\"group\",\n            \"layout_type\":\"ordered\",\n            \"widgets\":[\n               {\n                  \"id\":3726092277657502,\n                  \"definition\":{\n                     \"type\":\"note\",\n                     \"content\":\"cluster note widget\",\n                     \"background_color\":\"pink\",\n                     \"font_size\":\"14\",\n                     \"text_align\":\"center\",\n                     \"show_tick\":true,\n                     \"tick_pos\":\"50%\",\n                     \"tick_edge\":\"left\"\n                  }\n               },\n               {\n                  \"id\":6376384650558057,\n                  \"definition\":{\n                     \"title\":\"Alert Graph\",\n                     \"type\":\"alert_graph\",\n                     \"alert_id\":\"123\",\n                     \"viz_type\":\"toplist\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":4668903563678912,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"slo\",\n            \"view_type\":\"detail\",\n            \"time_windows\":[\n               \"7d\",\n               \"previous_week\"\n            ],\n            \"slo_id\":\"56789\",\n            \"show_error_budget\":true,\n            \"view_mode\":\"overall\",\n            \"global_time_target\":\"0\"\n         }\n      }\n   ],\n   \"template_variables\":[\n      {\n         \"name\":\"var_1\",\n         \"default\":\"aws\",\n         \"prefix\":\"host\"\n      },\n      {\n         \"name\":\"var_2\",\n         \"default\":\"autoscaling\",\n         \"prefix\":\"service_name\"\n      }\n   ],\n   \"layout_type\":\"ordered\",\n   \"notify_list\":[\n\n   ],\n   \"template_variable_presets\":[\n      {\n         \"name\":\"preset_1\",\n         \"template_variables\":[\n            {\n               \"name\":\"var_1\",\n               \"value\":\"host.dc\"\n            },\n            {\n               \"name\":\"var_2\",\n               \"value\":\"my_service\"\n            }\n         ]\n      }\n   ]\n}\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DashboardJson;\nimport com.pulumi.datadog.DashboardJsonArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Example Dashboard JSON\n        var dashboardJson = new DashboardJson(\"dashboardJson\", DashboardJsonArgs.builder()\n            .dashboard(\"\"\"\n{\n   \"title\":\"Ordered Layout Dashboard\",\n   \"description\":\"Created using the Datadog provider in Pulumi\",\n   \"widgets\":[\n      {\n         \"id\":719369537777170,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_graph\",\n            \"alert_id\":\"895605\",\n            \"viz_type\":\"timeseries\"\n         }\n      },\n      {\n         \"id\":2306240030393868,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_value\",\n            \"alert_id\":\"895605\",\n            \"unit\":\"b\",\n            \"text_align\":\"center\",\n            \"precision\":3\n         }\n      },\n      {\n         \"id\":6990998850881326,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"alert_value\",\n            \"alert_id\":\"895605\",\n            \"unit\":\"b\",\n            \"text_align\":\"center\",\n            \"precision\":3\n         }\n      },\n      {\n         \"id\":3351284044659007,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"change\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"compare_to\":\"week_before\",\n                  \"change_type\":\"absolute\",\n                  \"order_dir\":\"desc\",\n                  \"increase_good\":true,\n                  \"order_by\":\"name\",\n                  \"show_present\":true\n               }\n            ]\n         }\n      },\n      {\n         \"id\":6450290622996182,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":false,\n            \"type\":\"distribution\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"style\":{\n                     \"palette\":\"warm\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":4902842646291536,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"check_status\",\n            \"check\":\"aws.ecs.agent_connected\",\n            \"grouping\":\"cluster\",\n            \"group_by\":[\n               \"account\",\n               \"cluster\"\n            ],\n            \"tags\":[\n               \"account:demo\",\n               \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n            ]\n         }\n      },\n      {\n         \"id\":6392349954822644,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":false,\n            \"type\":\"heatmap\",\n            \"yaxis\":{\n               \"scale\":\"sqrt\",\n               \"include_zero\":true,\n               \"min\":\"1\",\n               \"max\":\"2\"\n            },\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"style\":{\n                     \"palette\":\"warm\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":5222961478940988,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"hostmap\",\n            \"requests\":{\n               \"fill\":{\n                  \"q\":\"avg:system.load.1{*} by {host}\"\n               },\n               \"size\":{\n                  \"q\":\"avg:memcache.uptime{*} by {host}\"\n               }\n            },\n            \"node_type\":\"container\",\n            \"no_metric_hosts\":true,\n            \"no_group_hosts\":true,\n            \"group\":[\n               \"host\",\n               \"region\"\n            ],\n            \"scope\":[\n               \"region:us-east-1\",\n               \"aws_account:727006795293\"\n            ],\n            \"style\":{\n               \"palette\":\"yellow_to_green\",\n               \"palette_flip\":true,\n               \"fill_min\":\"10\",\n               \"fill_max\":\"20\"\n            }\n         }\n      },\n      {\n         \"id\":8121199734227072,\n         \"definition\":{\n            \"type\":\"note\",\n            \"content\":\"note text\",\n            \"background_color\":\"pink\",\n            \"font_size\":\"14\",\n            \"text_align\":\"center\",\n            \"show_tick\":true,\n            \"tick_pos\":\"50%\",\n            \"tick_edge\":\"left\"\n         }\n      },\n      {\n         \"id\":1775856835833038,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"query_value\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"aggregator\":\"sum\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ]\n               }\n            ],\n            \"autoscale\":true,\n            \"custom_unit\":\"xx\",\n            \"text_align\":\"right\",\n            \"precision\":4\n         }\n      },\n      {\n         \"id\":8461455966625581,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"query_table\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                  \"aggregator\":\"sum\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ],\n                  \"limit\":10\n               }\n            ]\n         }\n      },\n      {\n         \"id\":8660006349418736,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"scatterplot\",\n            \"requests\":{\n               \"x\":{\n                  \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n                  \"aggregator\":\"max\"\n               },\n               \"y\":{\n                  \"q\":\"avg:system.mem.used{*} by {service, account}\",\n                  \"aggregator\":\"min\"\n               }\n            },\n            \"xaxis\":{\n               \"scale\":\"pow\",\n               \"label\":\"x\",\n               \"include_zero\":true,\n               \"min\":\"1\",\n               \"max\":\"2000\"\n            },\n            \"yaxis\":{\n               \"scale\":\"log\",\n               \"label\":\"y\",\n               \"include_zero\":false,\n               \"min\":\"5\",\n               \"max\":\"2222\"\n            },\n            \"color_by_groups\":[\n               \"account\",\n               \"apm-role-group\"\n            ]\n         }\n      },\n      {\n         \"id\":1669590772917638,\n         \"definition\":{\n            \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n            \"title_size\":\"16\",\n            \"title_align\":\"left\",\n            \"type\":\"servicemap\",\n            \"service\":\"master-db\",\n            \"filters\":[\n               \"env:prod\",\n               \"datacenter:dc1\"\n            ]\n         }\n      },\n      {\n         \"id\":2138829058361817,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"show_legend\":true,\n            \"legend_size\":\"2\",\n            \"type\":\"timeseries\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                  \"on_right_yaxis\":false,\n                  \"metadata\":[\n                     {\n                        \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n                        \"alias_name\":\"Alpha\"\n                     }\n                  ],\n                  \"style\":{\n                     \"palette\":\"warm\",\n                     \"line_type\":\"dashed\",\n                     \"line_width\":\"thin\"\n                  },\n                  \"display_type\":\"line\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"log_query\":{\n                     \"index\":\"mcnulty\",\n                     \"search\":{\n                        \"query\":\"status:info\"\n                     },\n                     \"group_by\":[\n                        {\n                           \"facet\":\"host\",\n                           \"sort\":{\n                              \"facet\":\"@duration\",\n                              \"aggregation\":\"avg\",\n                              \"order\":\"desc\"\n                           },\n                           \"limit\":10\n                        }\n                     ],\n                     \"compute\":{\n                        \"facet\":\"@duration\",\n                        \"interval\":5000,\n                        \"aggregation\":\"avg\"\n                     }\n                  },\n                  \"display_type\":\"area\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"apm_query\":{\n                     \"index\":\"apm-search\",\n                     \"search\":{\n                        \"query\":\"type:web\"\n                     },\n                     \"group_by\":[\n                        {\n                           \"facet\":\"resource_name\",\n                           \"sort\":{\n                              \"facet\":\"@string_query.interval\",\n                              \"aggregation\":\"avg\",\n                              \"order\":\"desc\"\n                           },\n                           \"limit\":50\n                        }\n                     ],\n                     \"compute\":{\n                        \"facet\":\"@duration\",\n                        \"interval\":5000,\n                        \"aggregation\":\"avg\"\n                     }\n                  },\n                  \"display_type\":\"bars\"\n               },\n               {\n                  \"on_right_yaxis\":false,\n                  \"process_query\":{\n                     \"search_by\":\"error\",\n                     \"metric\":\"process.stat.cpu.total_pct\",\n                     \"limit\":50,\n                     \"filter_by\":[\n                        \"active\"\n                     ]\n                  },\n                  \"display_type\":\"area\"\n               }\n            ],\n            \"yaxis\":{\n               \"scale\":\"log\",\n               \"include_zero\":false,\n               \"max\":\"100\"\n            },\n            \"events\":[\n               {\n                  \"q\":\"sources:test tags:1\"\n               },\n               {\n                  \"q\":\"sources:test tags:2\"\n               }\n            ],\n            \"markers\":[\n               {\n                  \"label\":\" z=6 \",\n                  \"value\":\"y = 4\",\n                  \"display_type\":\"error dashed\"\n               },\n               {\n                  \"label\":\" x=8 \",\n                  \"value\":\"10 \u003c y \u003c 999\",\n                  \"display_type\":\"ok solid\"\n               }\n            ]\n         }\n      },\n      {\n         \"id\":7307171374656551,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"toplist\",\n            \"requests\":[\n               {\n                  \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                  \"conditional_formats\":[\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003c\",\n                        \"palette\":\"white_on_green\",\n                        \"value\":2\n                     },\n                     {\n                        \"hide_value\":false,\n                        \"comparator\":\"\u003e\",\n                        \"palette\":\"white_on_red\",\n                        \"value\":2.2\n                     }\n                  ]\n               }\n            ]\n         }\n      },\n      {\n         \"id\":7086674838553258,\n         \"definition\":{\n            \"title\":\"Group Widget\",\n            \"type\":\"group\",\n            \"layout_type\":\"ordered\",\n            \"widgets\":[\n               {\n                  \"id\":3726092277657502,\n                  \"definition\":{\n                     \"type\":\"note\",\n                     \"content\":\"cluster note widget\",\n                     \"background_color\":\"pink\",\n                     \"font_size\":\"14\",\n                     \"text_align\":\"center\",\n                     \"show_tick\":true,\n                     \"tick_pos\":\"50%\",\n                     \"tick_edge\":\"left\"\n                  }\n               },\n               {\n                  \"id\":6376384650558057,\n                  \"definition\":{\n                     \"title\":\"Alert Graph\",\n                     \"type\":\"alert_graph\",\n                     \"alert_id\":\"123\",\n                     \"viz_type\":\"toplist\"\n                  }\n               }\n            ]\n         }\n      },\n      {\n         \"id\":4668903563678912,\n         \"definition\":{\n            \"title\":\"Widget Title\",\n            \"type\":\"slo\",\n            \"view_type\":\"detail\",\n            \"time_windows\":[\n               \"7d\",\n               \"previous_week\"\n            ],\n            \"slo_id\":\"56789\",\n            \"show_error_budget\":true,\n            \"view_mode\":\"overall\",\n            \"global_time_target\":\"0\"\n         }\n      }\n   ],\n   \"template_variables\":[\n      {\n         \"name\":\"var_1\",\n         \"default\":\"aws\",\n         \"prefix\":\"host\"\n      },\n      {\n         \"name\":\"var_2\",\n         \"default\":\"autoscaling\",\n         \"prefix\":\"service_name\"\n      }\n   ],\n   \"layout_type\":\"ordered\",\n   \"notify_list\":[\n\n   ],\n   \"template_variable_presets\":[\n      {\n         \"name\":\"preset_1\",\n         \"template_variables\":[\n            {\n               \"name\":\"var_1\",\n               \"value\":\"host.dc\"\n            },\n            {\n               \"name\":\"var_2\",\n               \"value\":\"my_service\"\n            }\n         ]\n      }\n   ]\n}\n            \"\"\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Example Dashboard JSON\n  dashboardJson:\n    type: datadog:DashboardJson\n    name: dashboard_json\n    properties:\n      dashboard: |\n        {\n           \"title\":\"Ordered Layout Dashboard\",\n           \"description\":\"Created using the Datadog provider in Pulumi\",\n           \"widgets\":[\n              {\n                 \"id\":719369537777170,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"alert_graph\",\n                    \"alert_id\":\"895605\",\n                    \"viz_type\":\"timeseries\"\n                 }\n              },\n              {\n                 \"id\":2306240030393868,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"alert_value\",\n                    \"alert_id\":\"895605\",\n                    \"unit\":\"b\",\n                    \"text_align\":\"center\",\n                    \"precision\":3\n                 }\n              },\n              {\n                 \"id\":6990998850881326,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"alert_value\",\n                    \"alert_id\":\"895605\",\n                    \"unit\":\"b\",\n                    \"text_align\":\"center\",\n                    \"precision\":3\n                 }\n              },\n              {\n                 \"id\":3351284044659007,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"change\",\n                    \"requests\":[\n                       {\n                          \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                          \"compare_to\":\"week_before\",\n                          \"change_type\":\"absolute\",\n                          \"order_dir\":\"desc\",\n                          \"increase_good\":true,\n                          \"order_by\":\"name\",\n                          \"show_present\":true\n                       }\n                    ]\n                 }\n              },\n              {\n                 \"id\":6450290622996182,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"show_legend\":false,\n                    \"type\":\"distribution\",\n                    \"requests\":[\n                       {\n                          \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                          \"style\":{\n                             \"palette\":\"warm\"\n                          }\n                       }\n                    ]\n                 }\n              },\n              {\n                 \"id\":4902842646291536,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"check_status\",\n                    \"check\":\"aws.ecs.agent_connected\",\n                    \"grouping\":\"cluster\",\n                    \"group_by\":[\n                       \"account\",\n                       \"cluster\"\n                    ],\n                    \"tags\":[\n                       \"account:demo\",\n                       \"cluster:awseb-ruthebdog-env-8-dn3m6u3gvk\"\n                    ]\n                 }\n              },\n              {\n                 \"id\":6392349954822644,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"show_legend\":false,\n                    \"type\":\"heatmap\",\n                    \"yaxis\":{\n                       \"scale\":\"sqrt\",\n                       \"include_zero\":true,\n                       \"min\":\"1\",\n                       \"max\":\"2\"\n                    },\n                    \"requests\":[\n                       {\n                          \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                          \"style\":{\n                             \"palette\":\"warm\"\n                          }\n                       }\n                    ]\n                 }\n              },\n              {\n                 \"id\":5222961478940988,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"hostmap\",\n                    \"requests\":{\n                       \"fill\":{\n                          \"q\":\"avg:system.load.1{*} by {host}\"\n                       },\n                       \"size\":{\n                          \"q\":\"avg:memcache.uptime{*} by {host}\"\n                       }\n                    },\n                    \"node_type\":\"container\",\n                    \"no_metric_hosts\":true,\n                    \"no_group_hosts\":true,\n                    \"group\":[\n                       \"host\",\n                       \"region\"\n                    ],\n                    \"scope\":[\n                       \"region:us-east-1\",\n                       \"aws_account:727006795293\"\n                    ],\n                    \"style\":{\n                       \"palette\":\"yellow_to_green\",\n                       \"palette_flip\":true,\n                       \"fill_min\":\"10\",\n                       \"fill_max\":\"20\"\n                    }\n                 }\n              },\n              {\n                 \"id\":8121199734227072,\n                 \"definition\":{\n                    \"type\":\"note\",\n                    \"content\":\"note text\",\n                    \"background_color\":\"pink\",\n                    \"font_size\":\"14\",\n                    \"text_align\":\"center\",\n                    \"show_tick\":true,\n                    \"tick_pos\":\"50%\",\n                    \"tick_edge\":\"left\"\n                 }\n              },\n              {\n                 \"id\":1775856835833038,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"query_value\",\n                    \"requests\":[\n                       {\n                          \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                          \"aggregator\":\"sum\",\n                          \"conditional_formats\":[\n                             {\n                                \"hide_value\":false,\n                                \"comparator\":\"\u003c\",\n                                \"palette\":\"white_on_green\",\n                                \"value\":2\n                             },\n                             {\n                                \"hide_value\":false,\n                                \"comparator\":\"\u003e\",\n                                \"palette\":\"white_on_red\",\n                                \"value\":2.2\n                             }\n                          ]\n                       }\n                    ],\n                    \"autoscale\":true,\n                    \"custom_unit\":\"xx\",\n                    \"text_align\":\"right\",\n                    \"precision\":4\n                 }\n              },\n              {\n                 \"id\":8461455966625581,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"query_table\",\n                    \"requests\":[\n                       {\n                          \"q\":\"avg:system.load.1{env:staging} by {account}\",\n                          \"aggregator\":\"sum\",\n                          \"conditional_formats\":[\n                             {\n                                \"hide_value\":false,\n                                \"comparator\":\"\u003c\",\n                                \"palette\":\"white_on_green\",\n                                \"value\":2\n                             },\n                             {\n                                \"hide_value\":false,\n                                \"comparator\":\"\u003e\",\n                                \"palette\":\"white_on_red\",\n                                \"value\":2.2\n                             }\n                          ],\n                          \"limit\":10\n                       }\n                    ]\n                 }\n              },\n              {\n                 \"id\":8660006349418736,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"scatterplot\",\n                    \"requests\":{\n                       \"x\":{\n                          \"q\":\"avg:system.cpu.user{*} by {service, account}\",\n                          \"aggregator\":\"max\"\n                       },\n                       \"y\":{\n                          \"q\":\"avg:system.mem.used{*} by {service, account}\",\n                          \"aggregator\":\"min\"\n                       }\n                    },\n                    \"xaxis\":{\n                       \"scale\":\"pow\",\n                       \"label\":\"x\",\n                       \"include_zero\":true,\n                       \"min\":\"1\",\n                       \"max\":\"2000\"\n                    },\n                    \"yaxis\":{\n                       \"scale\":\"log\",\n                       \"label\":\"y\",\n                       \"include_zero\":false,\n                       \"min\":\"5\",\n                       \"max\":\"2222\"\n                    },\n                    \"color_by_groups\":[\n                       \"account\",\n                       \"apm-role-group\"\n                    ]\n                 }\n              },\n              {\n                 \"id\":1669590772917638,\n                 \"definition\":{\n                    \"title\":\"env: prod, datacenter:dc1, service: master-db\",\n                    \"title_size\":\"16\",\n                    \"title_align\":\"left\",\n                    \"type\":\"servicemap\",\n                    \"service\":\"master-db\",\n                    \"filters\":[\n                       \"env:prod\",\n                       \"datacenter:dc1\"\n                    ]\n                 }\n              },\n              {\n                 \"id\":2138829058361817,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"show_legend\":true,\n                    \"legend_size\":\"2\",\n                    \"type\":\"timeseries\",\n                    \"requests\":[\n                       {\n                          \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                          \"on_right_yaxis\":false,\n                          \"metadata\":[\n                             {\n                                \"expression\":\"avg:system.cpu.user{app:general} by {env}\",\n                                \"alias_name\":\"Alpha\"\n                             }\n                          ],\n                          \"style\":{\n                             \"palette\":\"warm\",\n                             \"line_type\":\"dashed\",\n                             \"line_width\":\"thin\"\n                          },\n                          \"display_type\":\"line\"\n                       },\n                       {\n                          \"on_right_yaxis\":false,\n                          \"log_query\":{\n                             \"index\":\"mcnulty\",\n                             \"search\":{\n                                \"query\":\"status:info\"\n                             },\n                             \"group_by\":[\n                                {\n                                   \"facet\":\"host\",\n                                   \"sort\":{\n                                      \"facet\":\"@duration\",\n                                      \"aggregation\":\"avg\",\n                                      \"order\":\"desc\"\n                                   },\n                                   \"limit\":10\n                                }\n                             ],\n                             \"compute\":{\n                                \"facet\":\"@duration\",\n                                \"interval\":5000,\n                                \"aggregation\":\"avg\"\n                             }\n                          },\n                          \"display_type\":\"area\"\n                       },\n                       {\n                          \"on_right_yaxis\":false,\n                          \"apm_query\":{\n                             \"index\":\"apm-search\",\n                             \"search\":{\n                                \"query\":\"type:web\"\n                             },\n                             \"group_by\":[\n                                {\n                                   \"facet\":\"resource_name\",\n                                   \"sort\":{\n                                      \"facet\":\"@string_query.interval\",\n                                      \"aggregation\":\"avg\",\n                                      \"order\":\"desc\"\n                                   },\n                                   \"limit\":50\n                                }\n                             ],\n                             \"compute\":{\n                                \"facet\":\"@duration\",\n                                \"interval\":5000,\n                                \"aggregation\":\"avg\"\n                             }\n                          },\n                          \"display_type\":\"bars\"\n                       },\n                       {\n                          \"on_right_yaxis\":false,\n                          \"process_query\":{\n                             \"search_by\":\"error\",\n                             \"metric\":\"process.stat.cpu.total_pct\",\n                             \"limit\":50,\n                             \"filter_by\":[\n                                \"active\"\n                             ]\n                          },\n                          \"display_type\":\"area\"\n                       }\n                    ],\n                    \"yaxis\":{\n                       \"scale\":\"log\",\n                       \"include_zero\":false,\n                       \"max\":\"100\"\n                    },\n                    \"events\":[\n                       {\n                          \"q\":\"sources:test tags:1\"\n                       },\n                       {\n                          \"q\":\"sources:test tags:2\"\n                       }\n                    ],\n                    \"markers\":[\n                       {\n                          \"label\":\" z=6 \",\n                          \"value\":\"y = 4\",\n                          \"display_type\":\"error dashed\"\n                       },\n                       {\n                          \"label\":\" x=8 \",\n                          \"value\":\"10 \u003c y \u003c 999\",\n                          \"display_type\":\"ok solid\"\n                       }\n                    ]\n                 }\n              },\n              {\n                 \"id\":7307171374656551,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"toplist\",\n                    \"requests\":[\n                       {\n                          \"q\":\"avg:system.cpu.user{app:general} by {env}\",\n                          \"conditional_formats\":[\n                             {\n                                \"hide_value\":false,\n                                \"comparator\":\"\u003c\",\n                                \"palette\":\"white_on_green\",\n                                \"value\":2\n                             },\n                             {\n                                \"hide_value\":false,\n                                \"comparator\":\"\u003e\",\n                                \"palette\":\"white_on_red\",\n                                \"value\":2.2\n                             }\n                          ]\n                       }\n                    ]\n                 }\n              },\n              {\n                 \"id\":7086674838553258,\n                 \"definition\":{\n                    \"title\":\"Group Widget\",\n                    \"type\":\"group\",\n                    \"layout_type\":\"ordered\",\n                    \"widgets\":[\n                       {\n                          \"id\":3726092277657502,\n                          \"definition\":{\n                             \"type\":\"note\",\n                             \"content\":\"cluster note widget\",\n                             \"background_color\":\"pink\",\n                             \"font_size\":\"14\",\n                             \"text_align\":\"center\",\n                             \"show_tick\":true,\n                             \"tick_pos\":\"50%\",\n                             \"tick_edge\":\"left\"\n                          }\n                       },\n                       {\n                          \"id\":6376384650558057,\n                          \"definition\":{\n                             \"title\":\"Alert Graph\",\n                             \"type\":\"alert_graph\",\n                             \"alert_id\":\"123\",\n                             \"viz_type\":\"toplist\"\n                          }\n                       }\n                    ]\n                 }\n              },\n              {\n                 \"id\":4668903563678912,\n                 \"definition\":{\n                    \"title\":\"Widget Title\",\n                    \"type\":\"slo\",\n                    \"view_type\":\"detail\",\n                    \"time_windows\":[\n                       \"7d\",\n                       \"previous_week\"\n                    ],\n                    \"slo_id\":\"56789\",\n                    \"show_error_budget\":true,\n                    \"view_mode\":\"overall\",\n                    \"global_time_target\":\"0\"\n                 }\n              }\n           ],\n           \"template_variables\":[\n              {\n                 \"name\":\"var_1\",\n                 \"default\":\"aws\",\n                 \"prefix\":\"host\"\n              },\n              {\n                 \"name\":\"var_2\",\n                 \"default\":\"autoscaling\",\n                 \"prefix\":\"service_name\"\n              }\n           ],\n           \"layout_type\":\"ordered\",\n           \"notify_list\":[\n\n           ],\n           \"template_variable_presets\":[\n              {\n                 \"name\":\"preset_1\",\n                 \"template_variables\":[\n                    {\n                       \"name\":\"var_1\",\n                       \"value\":\"host.dc\"\n                    },\n                    {\n                       \"name\":\"var_2\",\n                       \"value\":\"my_service\"\n                    }\n                 ]\n              }\n           ]\n        }\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/dashboardJson:DashboardJson my_service_dashboard sv7-gyh-kas\n```\n\n",
            "properties": {
                "dashboard": {
                    "type": "string",
                    "description": "The JSON formatted definition of the Dashboard.\n"
                },
                "dashboardLists": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "A list of dashboard lists this dashboard belongs to. This attribute should not be set if managing the corresponding dashboard lists using Terraform as it causes inconsistent behavior.\n"
                },
                "dashboardListsRemoveds": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "The list of dashboard lists this dashboard should be removed from. Internal only.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL of the dashboard.\n"
                }
            },
            "required": [
                "dashboard",
                "dashboardListsRemoveds",
                "url"
            ],
            "inputProperties": {
                "dashboard": {
                    "type": "string",
                    "description": "The JSON formatted definition of the Dashboard.\n"
                },
                "dashboardLists": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "description": "A list of dashboard lists this dashboard belongs to. This attribute should not be set if managing the corresponding dashboard lists using Terraform as it causes inconsistent behavior.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL of the dashboard.\n"
                }
            },
            "requiredInputs": [
                "dashboard"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DashboardJson resources.\n",
                "properties": {
                    "dashboard": {
                        "type": "string",
                        "description": "The JSON formatted definition of the Dashboard.\n"
                    },
                    "dashboardLists": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "description": "A list of dashboard lists this dashboard belongs to. This attribute should not be set if managing the corresponding dashboard lists using Terraform as it causes inconsistent behavior.\n"
                    },
                    "dashboardListsRemoveds": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "description": "The list of dashboard lists this dashboard should be removed from. Internal only.\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "The URL of the dashboard.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/dashboardList:DashboardList": {
            "description": "Provides a Datadog\u003cspan pulumi-lang-nodejs=\" dashboardList \" pulumi-lang-dotnet=\" DashboardList \" pulumi-lang-go=\" dashboardList \" pulumi-lang-python=\" dashboard_list \" pulumi-lang-yaml=\" dashboardList \" pulumi-lang-java=\" dashboardList \"\u003e dashboardList \u003c/span\u003eresource. This can be used to create and manage Datadog Dashboard Lists and the individual dashboards within them.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst time = new datadog.Dashboard(\"time\", {\n    title: \"TF Test Layout Dashboard\",\n    description: \"Created using the Datadog provider in Pulumi\",\n    layoutType: \"ordered\",\n    isReadOnly: true,\n    widgets: [{\n        alertGraphDefinition: {\n            alertId: \"1234\",\n            vizType: \"timeseries\",\n            title: \"Widget Title\",\n            liveSpan: \"1h\",\n        },\n    }],\n});\nconst screen = new datadog.Dashboard(\"screen\", {\n    title: \"TF Test Free Layout Dashboard\",\n    description: \"Created using the Datadog provider in Pulumi\",\n    layoutType: \"free\",\n    isReadOnly: false,\n    widgets: [{\n        eventStreamDefinition: {\n            query: \"*\",\n            eventSize: \"l\",\n            title: \"Widget Title\",\n            titleSize: \"16\",\n            titleAlign: \"left\",\n            liveSpan: \"1h\",\n        },\n        widgetLayout: {\n            height: 43,\n            width: 32,\n            x: 5,\n            y: 5,\n        },\n    }],\n});\n// Create a new Dashboard List with two Dashboards\nconst newList = new datadog.DashboardList(\"new_list\", {\n    name: \"Terraform Created List\",\n    dashItems: [\n        {\n            type: \"custom_timeboard\",\n            dashId: time.id,\n        },\n        {\n            type: \"custom_screenboard\",\n            dashId: screen.id,\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntime = datadog.Dashboard(\"time\",\n    title=\"TF Test Layout Dashboard\",\n    description=\"Created using the Datadog provider in Pulumi\",\n    layout_type=\"ordered\",\n    is_read_only=True,\n    widgets=[{\n        \"alert_graph_definition\": {\n            \"alert_id\": \"1234\",\n            \"viz_type\": \"timeseries\",\n            \"title\": \"Widget Title\",\n            \"live_span\": \"1h\",\n        },\n    }])\nscreen = datadog.Dashboard(\"screen\",\n    title=\"TF Test Free Layout Dashboard\",\n    description=\"Created using the Datadog provider in Pulumi\",\n    layout_type=\"free\",\n    is_read_only=False,\n    widgets=[{\n        \"event_stream_definition\": {\n            \"query\": \"*\",\n            \"event_size\": \"l\",\n            \"title\": \"Widget Title\",\n            \"title_size\": \"16\",\n            \"title_align\": \"left\",\n            \"live_span\": \"1h\",\n        },\n        \"widget_layout\": {\n            \"height\": 43,\n            \"width\": 32,\n            \"x\": 5,\n            \"y\": 5,\n        },\n    }])\n# Create a new Dashboard List with two Dashboards\nnew_list = datadog.DashboardList(\"new_list\",\n    name=\"Terraform Created List\",\n    dash_items=[\n        {\n            \"type\": \"custom_timeboard\",\n            \"dash_id\": time.id,\n        },\n        {\n            \"type\": \"custom_screenboard\",\n            \"dash_id\": screen.id,\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var time = new Datadog.Dashboard(\"time\", new()\n    {\n        Title = \"TF Test Layout Dashboard\",\n        Description = \"Created using the Datadog provider in Pulumi\",\n        LayoutType = \"ordered\",\n        IsReadOnly = true,\n        Widgets = new[]\n        {\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                AlertGraphDefinition = new Datadog.Inputs.DashboardWidgetAlertGraphDefinitionArgs\n                {\n                    AlertId = \"1234\",\n                    VizType = \"timeseries\",\n                    Title = \"Widget Title\",\n                    LiveSpan = \"1h\",\n                },\n            },\n        },\n    });\n\n    var screen = new Datadog.Dashboard(\"screen\", new()\n    {\n        Title = \"TF Test Free Layout Dashboard\",\n        Description = \"Created using the Datadog provider in Pulumi\",\n        LayoutType = \"free\",\n        IsReadOnly = false,\n        Widgets = new[]\n        {\n            new Datadog.Inputs.DashboardWidgetArgs\n            {\n                EventStreamDefinition = new Datadog.Inputs.DashboardWidgetEventStreamDefinitionArgs\n                {\n                    Query = \"*\",\n                    EventSize = \"l\",\n                    Title = \"Widget Title\",\n                    TitleSize = \"16\",\n                    TitleAlign = \"left\",\n                    LiveSpan = \"1h\",\n                },\n                WidgetLayout = new Datadog.Inputs.DashboardWidgetWidgetLayoutArgs\n                {\n                    Height = 43,\n                    Width = 32,\n                    X = 5,\n                    Y = 5,\n                },\n            },\n        },\n    });\n\n    // Create a new Dashboard List with two Dashboards\n    var newList = new Datadog.DashboardList(\"new_list\", new()\n    {\n        Name = \"Terraform Created List\",\n        DashItems = new[]\n        {\n            new Datadog.Inputs.DashboardListDashItemArgs\n            {\n                Type = \"custom_timeboard\",\n                DashId = time.Id,\n            },\n            new Datadog.Inputs.DashboardListDashItemArgs\n            {\n                Type = \"custom_screenboard\",\n                DashId = screen.Id,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttime, err := datadog.NewDashboard(ctx, \"time\", \u0026datadog.DashboardArgs{\n\t\t\tTitle:       pulumi.String(\"TF Test Layout Dashboard\"),\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in Pulumi\"),\n\t\t\tLayoutType:  pulumi.String(\"ordered\"),\n\t\t\tIsReadOnly:  pulumi.Bool(true),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tAlertGraphDefinition: \u0026datadog.DashboardWidgetAlertGraphDefinitionArgs{\n\t\t\t\t\t\tAlertId:  pulumi.String(\"1234\"),\n\t\t\t\t\t\tVizType:  pulumi.String(\"timeseries\"),\n\t\t\t\t\t\tTitle:    pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tLiveSpan: pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tscreen, err := datadog.NewDashboard(ctx, \"screen\", \u0026datadog.DashboardArgs{\n\t\t\tTitle:       pulumi.String(\"TF Test Free Layout Dashboard\"),\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in Pulumi\"),\n\t\t\tLayoutType:  pulumi.String(\"free\"),\n\t\t\tIsReadOnly:  pulumi.Bool(false),\n\t\t\tWidgets: datadog.DashboardWidgetArray{\n\t\t\t\t\u0026datadog.DashboardWidgetArgs{\n\t\t\t\t\tEventStreamDefinition: \u0026datadog.DashboardWidgetEventStreamDefinitionArgs{\n\t\t\t\t\t\tQuery:      pulumi.String(\"*\"),\n\t\t\t\t\t\tEventSize:  pulumi.String(\"l\"),\n\t\t\t\t\t\tTitle:      pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tTitleSize:  pulumi.String(\"16\"),\n\t\t\t\t\t\tTitleAlign: pulumi.String(\"left\"),\n\t\t\t\t\t\tLiveSpan:   pulumi.String(\"1h\"),\n\t\t\t\t\t},\n\t\t\t\t\tWidgetLayout: \u0026datadog.DashboardWidgetWidgetLayoutArgs{\n\t\t\t\t\t\tHeight: pulumi.Int(43),\n\t\t\t\t\t\tWidth:  pulumi.Int(32),\n\t\t\t\t\t\tX:      pulumi.Int(5),\n\t\t\t\t\t\tY:      pulumi.Int(5),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a new Dashboard List with two Dashboards\n\t\t_, err = datadog.NewDashboardList(ctx, \"new_list\", \u0026datadog.DashboardListArgs{\n\t\t\tName: pulumi.String(\"Terraform Created List\"),\n\t\t\tDashItems: datadog.DashboardListDashItemArray{\n\t\t\t\t\u0026datadog.DashboardListDashItemArgs{\n\t\t\t\t\tType:   pulumi.String(\"custom_timeboard\"),\n\t\t\t\t\tDashId: time.ID(),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DashboardListDashItemArgs{\n\t\t\t\t\tType:   pulumi.String(\"custom_screenboard\"),\n\t\t\t\t\tDashId: screen.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Dashboard;\nimport com.pulumi.datadog.DashboardArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetAlertGraphDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetEventStreamDefinitionArgs;\nimport com.pulumi.datadog.inputs.DashboardWidgetWidgetLayoutArgs;\nimport com.pulumi.datadog.DashboardList;\nimport com.pulumi.datadog.DashboardListArgs;\nimport com.pulumi.datadog.inputs.DashboardListDashItemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var time = new Dashboard(\"time\", DashboardArgs.builder()\n            .title(\"TF Test Layout Dashboard\")\n            .description(\"Created using the Datadog provider in Pulumi\")\n            .layoutType(\"ordered\")\n            .isReadOnly(true)\n            .widgets(DashboardWidgetArgs.builder()\n                .alertGraphDefinition(DashboardWidgetAlertGraphDefinitionArgs.builder()\n                    .alertId(\"1234\")\n                    .vizType(\"timeseries\")\n                    .title(\"Widget Title\")\n                    .liveSpan(\"1h\")\n                    .build())\n                .build())\n            .build());\n\n        var screen = new Dashboard(\"screen\", DashboardArgs.builder()\n            .title(\"TF Test Free Layout Dashboard\")\n            .description(\"Created using the Datadog provider in Pulumi\")\n            .layoutType(\"free\")\n            .isReadOnly(false)\n            .widgets(DashboardWidgetArgs.builder()\n                .eventStreamDefinition(DashboardWidgetEventStreamDefinitionArgs.builder()\n                    .query(\"*\")\n                    .eventSize(\"l\")\n                    .title(\"Widget Title\")\n                    .titleSize(\"16\")\n                    .titleAlign(\"left\")\n                    .liveSpan(\"1h\")\n                    .build())\n                .widgetLayout(DashboardWidgetWidgetLayoutArgs.builder()\n                    .height(43)\n                    .width(32)\n                    .x(5)\n                    .y(5)\n                    .build())\n                .build())\n            .build());\n\n        // Create a new Dashboard List with two Dashboards\n        var newList = new DashboardList(\"newList\", DashboardListArgs.builder()\n            .name(\"Terraform Created List\")\n            .dashItems(            \n                DashboardListDashItemArgs.builder()\n                    .type(\"custom_timeboard\")\n                    .dashId(time.id())\n                    .build(),\n                DashboardListDashItemArgs.builder()\n                    .type(\"custom_screenboard\")\n                    .dashId(screen.id())\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a new Dashboard List with two Dashboards\n  newList:\n    type: datadog:DashboardList\n    name: new_list\n    properties:\n      name: Terraform Created List\n      dashItems:\n        - type: custom_timeboard\n          dashId: ${time.id}\n        - type: custom_screenboard\n          dashId: ${screen.id}\n  time:\n    type: datadog:Dashboard\n    properties:\n      title: TF Test Layout Dashboard\n      description: Created using the Datadog provider in Pulumi\n      layoutType: ordered\n      isReadOnly: true\n      widgets:\n        - alertGraphDefinition:\n            alertId: '1234'\n            vizType: timeseries\n            title: Widget Title\n            liveSpan: 1h\n  screen:\n    type: datadog:Dashboard\n    properties:\n      title: TF Test Free Layout Dashboard\n      description: Created using the Datadog provider in Pulumi\n      layoutType: free\n      isReadOnly: false\n      widgets:\n        - eventStreamDefinition:\n            query: '*'\n            eventSize: l\n            title: Widget Title\n            titleSize: 16\n            titleAlign: left\n            liveSpan: 1h\n          widgetLayout:\n            height: 43\n            width: 32\n            x: 5\n            y: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/dashboardList:DashboardList new_list 123456\n```\n\n",
            "properties": {
                "dashItems": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardListDashItem:DashboardListDashItem"
                    },
                    "description": "A set of dashboard items that belong to this list\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Dashboard List\n"
                }
            },
            "required": [
                "name"
            ],
            "inputProperties": {
                "dashItems": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DashboardListDashItem:DashboardListDashItem"
                    },
                    "description": "A set of dashboard items that belong to this list\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the Dashboard List\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DashboardList resources.\n",
                "properties": {
                    "dashItems": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/DashboardListDashItem:DashboardListDashItem"
                        },
                        "description": "A set of dashboard items that belong to this list\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the Dashboard List\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/dataset:Dataset": {
            "description": "Provides a Datadog Dataset resource. This can be used to create and manage Datadog datasets.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new dataset resource\nconst foo = new datadog.Dataset(\"foo\", {\n    name: \"HR Dataset\",\n    principals: [\"role:00000000-0000-1111-0000-000000000000\"],\n    productFilters: [{\n        product: \"rum\",\n        filters: [\"@application.id:123\"],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new dataset resource\nfoo = datadog.Dataset(\"foo\",\n    name=\"HR Dataset\",\n    principals=[\"role:00000000-0000-1111-0000-000000000000\"],\n    product_filters=[{\n        \"product\": \"rum\",\n        \"filters\": [\"@application.id:123\"],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new dataset resource\n    var foo = new Datadog.Dataset(\"foo\", new()\n    {\n        Name = \"HR Dataset\",\n        Principals = new[]\n        {\n            \"role:00000000-0000-1111-0000-000000000000\",\n        },\n        ProductFilters = new[]\n        {\n            new Datadog.Inputs.DatasetProductFilterArgs\n            {\n                Product = \"rum\",\n                Filters = new[]\n                {\n                    \"@application.id:123\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new dataset resource\n\t\t_, err := datadog.NewDataset(ctx, \"foo\", \u0026datadog.DatasetArgs{\n\t\t\tName: pulumi.String(\"HR Dataset\"),\n\t\t\tPrincipals: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"role:00000000-0000-1111-0000-000000000000\"),\n\t\t\t},\n\t\t\tProductFilters: datadog.DatasetProductFilterArray{\n\t\t\t\t\u0026datadog.DatasetProductFilterArgs{\n\t\t\t\t\tProduct: pulumi.String(\"rum\"),\n\t\t\t\t\tFilters: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"@application.id:123\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Dataset;\nimport com.pulumi.datadog.DatasetArgs;\nimport com.pulumi.datadog.inputs.DatasetProductFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new dataset resource\n        var foo = new Dataset(\"foo\", DatasetArgs.builder()\n            .name(\"HR Dataset\")\n            .principals(\"role:00000000-0000-1111-0000-000000000000\")\n            .productFilters(DatasetProductFilterArgs.builder()\n                .product(\"rum\")\n                .filters(\"@application.id:123\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new dataset resource\n  foo:\n    type: datadog:Dataset\n    properties:\n      name: HR Dataset\n      principals:\n        - role:00000000-0000-1111-0000-000000000000\n      productFilters:\n        - product: rum\n          filters:\n            - '@application.id:123'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/dataset:Dataset foo \"\u003cdataset_id\u003e\"\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "Indicates when the dataset was created (in ISO 8601).\n"
                },
                "createdBy": {
                    "type": "string",
                    "description": "Indicates who created the dataset.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the dataset.\n"
                },
                "principals": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of principals. A principal is a subject or group of subjects. Each principal is formatted as `type:id`. Supported types: \u003cspan pulumi-lang-nodejs=\"`role`\" pulumi-lang-dotnet=\"`Role`\" pulumi-lang-go=\"`role`\" pulumi-lang-python=\"`role`\" pulumi-lang-yaml=\"`role`\" pulumi-lang-java=\"`role`\"\u003e`role`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e.\n"
                },
                "productFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DatasetProductFilter:DatasetProductFilter"
                    }
                }
            },
            "required": [
                "createdAt",
                "createdBy",
                "name",
                "principals"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "The name of the dataset.\n"
                },
                "principals": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of principals. A principal is a subject or group of subjects. Each principal is formatted as `type:id`. Supported types: \u003cspan pulumi-lang-nodejs=\"`role`\" pulumi-lang-dotnet=\"`Role`\" pulumi-lang-go=\"`role`\" pulumi-lang-python=\"`role`\" pulumi-lang-yaml=\"`role`\" pulumi-lang-java=\"`role`\"\u003e`role`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e.\n"
                },
                "productFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DatasetProductFilter:DatasetProductFilter"
                    }
                }
            },
            "requiredInputs": [
                "name",
                "principals"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Dataset resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string",
                        "description": "Indicates when the dataset was created (in ISO 8601).\n"
                    },
                    "createdBy": {
                        "type": "string",
                        "description": "Indicates who created the dataset.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the dataset.\n"
                    },
                    "principals": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "An array of principals. A principal is a subject or group of subjects. Each principal is formatted as `type:id`. Supported types: \u003cspan pulumi-lang-nodejs=\"`role`\" pulumi-lang-dotnet=\"`Role`\" pulumi-lang-go=\"`role`\" pulumi-lang-python=\"`role`\" pulumi-lang-yaml=\"`role`\" pulumi-lang-java=\"`role`\"\u003e`role`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`team`\" pulumi-lang-dotnet=\"`Team`\" pulumi-lang-go=\"`team`\" pulumi-lang-python=\"`team`\" pulumi-lang-yaml=\"`team`\" pulumi-lang-java=\"`team`\"\u003e`team`\u003c/span\u003e.\n"
                    },
                    "productFilters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/DatasetProductFilter:DatasetProductFilter"
                        }
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/datastore:Datastore": {
            "description": "Provides a Datadog Datastore resource. This can be used to create and manage Datadog datastore.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create a new datastore resource\nconst foo = new datadog.Datastore(\"foo\", {\n    name: \"my-datastore\",\n    description: \"My application datastore\",\n    primaryColumnName: \"id\",\n    primaryKeyGenerationStrategy: \"none\",\n    orgAccess: \"contributor\",\n});\n// Create a datastore with auto-generated UUIDs for primary keys\nconst autoUuid = new datadog.Datastore(\"auto_uuid\", {\n    name: \"my-uuid-datastore\",\n    description: \"Datastore with auto-generated primary keys\",\n    primaryColumnName: \"uuid\",\n    primaryKeyGenerationStrategy: \"uuid\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create a new datastore resource\nfoo = datadog.Datastore(\"foo\",\n    name=\"my-datastore\",\n    description=\"My application datastore\",\n    primary_column_name=\"id\",\n    primary_key_generation_strategy=\"none\",\n    org_access=\"contributor\")\n# Create a datastore with auto-generated UUIDs for primary keys\nauto_uuid = datadog.Datastore(\"auto_uuid\",\n    name=\"my-uuid-datastore\",\n    description=\"Datastore with auto-generated primary keys\",\n    primary_column_name=\"uuid\",\n    primary_key_generation_strategy=\"uuid\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a new datastore resource\n    var foo = new Datadog.Datastore(\"foo\", new()\n    {\n        Name = \"my-datastore\",\n        Description = \"My application datastore\",\n        PrimaryColumnName = \"id\",\n        PrimaryKeyGenerationStrategy = \"none\",\n        OrgAccess = \"contributor\",\n    });\n\n    // Create a datastore with auto-generated UUIDs for primary keys\n    var autoUuid = new Datadog.Datastore(\"auto_uuid\", new()\n    {\n        Name = \"my-uuid-datastore\",\n        Description = \"Datastore with auto-generated primary keys\",\n        PrimaryColumnName = \"uuid\",\n        PrimaryKeyGenerationStrategy = \"uuid\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a new datastore resource\n\t\t_, err := datadog.NewDatastore(ctx, \"foo\", \u0026datadog.DatastoreArgs{\n\t\t\tName:                         pulumi.String(\"my-datastore\"),\n\t\t\tDescription:                  pulumi.String(\"My application datastore\"),\n\t\t\tPrimaryColumnName:            pulumi.String(\"id\"),\n\t\t\tPrimaryKeyGenerationStrategy: pulumi.String(\"none\"),\n\t\t\tOrgAccess:                    pulumi.String(\"contributor\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a datastore with auto-generated UUIDs for primary keys\n\t\t_, err = datadog.NewDatastore(ctx, \"auto_uuid\", \u0026datadog.DatastoreArgs{\n\t\t\tName:                         pulumi.String(\"my-uuid-datastore\"),\n\t\t\tDescription:                  pulumi.String(\"Datastore with auto-generated primary keys\"),\n\t\t\tPrimaryColumnName:            pulumi.String(\"uuid\"),\n\t\t\tPrimaryKeyGenerationStrategy: pulumi.String(\"uuid\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Datastore;\nimport com.pulumi.datadog.DatastoreArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create a new datastore resource\n        var foo = new Datastore(\"foo\", DatastoreArgs.builder()\n            .name(\"my-datastore\")\n            .description(\"My application datastore\")\n            .primaryColumnName(\"id\")\n            .primaryKeyGenerationStrategy(\"none\")\n            .orgAccess(\"contributor\")\n            .build());\n\n        // Create a datastore with auto-generated UUIDs for primary keys\n        var autoUuid = new Datastore(\"autoUuid\", DatastoreArgs.builder()\n            .name(\"my-uuid-datastore\")\n            .description(\"Datastore with auto-generated primary keys\")\n            .primaryColumnName(\"uuid\")\n            .primaryKeyGenerationStrategy(\"uuid\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a new datastore resource\n  foo:\n    type: datadog:Datastore\n    properties:\n      name: my-datastore\n      description: My application datastore\n      primaryColumnName: id\n      primaryKeyGenerationStrategy: none\n      orgAccess: contributor\n  # Create a datastore with auto-generated UUIDs for primary keys\n  autoUuid:\n    type: datadog:Datastore\n    name: auto_uuid\n    properties:\n      name: my-uuid-datastore\n      description: Datastore with auto-generated primary keys\n      primaryColumnName: uuid\n      primaryKeyGenerationStrategy: uuid\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/datastore:Datastore foo \"datastore-id\"\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp when the datastore was created.\n"
                },
                "creatorUserId": {
                    "type": "integer",
                    "description": "The numeric ID of the user who created the datastore.\n"
                },
                "creatorUserUuid": {
                    "type": "string",
                    "description": "The UUID of the user who created the datastore.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A human-readable description about the datastore.\n"
                },
                "modifiedAt": {
                    "type": "string",
                    "description": "Timestamp when the datastore was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The display name for the new datastore.\n"
                },
                "orgAccess": {
                    "type": "string",
                    "description": "The organization access level for the datastore. For example, 'contributor'.\n"
                },
                "orgId": {
                    "type": "integer",
                    "description": "The ID of the organization that owns this datastore.\n"
                },
                "primaryColumnName": {
                    "type": "string",
                    "description": "The name of the primary key column for this datastore. Primary column names:   - Must abide by both [PostgreSQL naming conventions](https://www.postgresql.org/docs/7.0/syntax525.htm)   - Cannot exceed 63 characters\n"
                },
                "primaryKeyGenerationStrategy": {
                    "type": "string",
                    "description": "Can be set to \u003cspan pulumi-lang-nodejs=\"`uuid`\" pulumi-lang-dotnet=\"`Uuid`\" pulumi-lang-go=\"`uuid`\" pulumi-lang-python=\"`uuid`\" pulumi-lang-yaml=\"`uuid`\" pulumi-lang-java=\"`uuid`\"\u003e`uuid`\u003c/span\u003e to automatically generate primary keys when new items are added. Default value is \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, which requires you to supply a primary key for each new item.\n"
                }
            },
            "required": [
                "createdAt",
                "creatorUserId",
                "creatorUserUuid",
                "modifiedAt",
                "name",
                "orgId",
                "primaryColumnName"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "A human-readable description about the datastore.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The display name for the new datastore.\n"
                },
                "orgAccess": {
                    "type": "string",
                    "description": "The organization access level for the datastore. For example, 'contributor'.\n"
                },
                "primaryColumnName": {
                    "type": "string",
                    "description": "The name of the primary key column for this datastore. Primary column names:   - Must abide by both [PostgreSQL naming conventions](https://www.postgresql.org/docs/7.0/syntax525.htm)   - Cannot exceed 63 characters\n"
                },
                "primaryKeyGenerationStrategy": {
                    "type": "string",
                    "description": "Can be set to \u003cspan pulumi-lang-nodejs=\"`uuid`\" pulumi-lang-dotnet=\"`Uuid`\" pulumi-lang-go=\"`uuid`\" pulumi-lang-python=\"`uuid`\" pulumi-lang-yaml=\"`uuid`\" pulumi-lang-java=\"`uuid`\"\u003e`uuid`\u003c/span\u003e to automatically generate primary keys when new items are added. Default value is \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, which requires you to supply a primary key for each new item.\n"
                }
            },
            "requiredInputs": [
                "name",
                "primaryColumnName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Datastore resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp when the datastore was created.\n"
                    },
                    "creatorUserId": {
                        "type": "integer",
                        "description": "The numeric ID of the user who created the datastore.\n"
                    },
                    "creatorUserUuid": {
                        "type": "string",
                        "description": "The UUID of the user who created the datastore.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A human-readable description about the datastore.\n"
                    },
                    "modifiedAt": {
                        "type": "string",
                        "description": "Timestamp when the datastore was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The display name for the new datastore.\n"
                    },
                    "orgAccess": {
                        "type": "string",
                        "description": "The organization access level for the datastore. For example, 'contributor'.\n"
                    },
                    "orgId": {
                        "type": "integer",
                        "description": "The ID of the organization that owns this datastore.\n"
                    },
                    "primaryColumnName": {
                        "type": "string",
                        "description": "The name of the primary key column for this datastore. Primary column names:   - Must abide by both [PostgreSQL naming conventions](https://www.postgresql.org/docs/7.0/syntax525.htm)   - Cannot exceed 63 characters\n"
                    },
                    "primaryKeyGenerationStrategy": {
                        "type": "string",
                        "description": "Can be set to \u003cspan pulumi-lang-nodejs=\"`uuid`\" pulumi-lang-dotnet=\"`Uuid`\" pulumi-lang-go=\"`uuid`\" pulumi-lang-python=\"`uuid`\" pulumi-lang-yaml=\"`uuid`\" pulumi-lang-java=\"`uuid`\"\u003e`uuid`\u003c/span\u003e to automatically generate primary keys when new items are added. Default value is \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e, which requires you to supply a primary key for each new item.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/datastoreItem:DatastoreItem": {
            "description": "Provides a Datadog Datastore Item resource. This can be used to create and manage items in a Datadog datastore.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create a datastore and add items to it\nconst example = new datadog.Datastore(\"example\", {\n    name: \"users-datastore\",\n    description: \"Datastore for user data\",\n    primaryColumnName: \"id\",\n    primaryKeyGenerationStrategy: \"none\",\n});\n// Create a datastore item with the primary key specified in the value map\nconst user1 = new datadog.DatastoreItem(\"user1\", {\n    datastoreId: example.id,\n    itemKey: \"user-123\",\n    value: {\n        id: \"user-123\",\n        username: \"john_doe\",\n        email: \"john@example.com\",\n        status: \"active\",\n    },\n});\n// Create another datastore item\nconst user2 = new datadog.DatastoreItem(\"user2\", {\n    datastoreId: example.id,\n    itemKey: \"user-456\",\n    value: {\n        id: \"user-456\",\n        username: \"jane_doe\",\n        email: \"jane@example.com\",\n        status: \"active\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create a datastore and add items to it\nexample = datadog.Datastore(\"example\",\n    name=\"users-datastore\",\n    description=\"Datastore for user data\",\n    primary_column_name=\"id\",\n    primary_key_generation_strategy=\"none\")\n# Create a datastore item with the primary key specified in the value map\nuser1 = datadog.DatastoreItem(\"user1\",\n    datastore_id=example.id,\n    item_key=\"user-123\",\n    value={\n        \"id\": \"user-123\",\n        \"username\": \"john_doe\",\n        \"email\": \"john@example.com\",\n        \"status\": \"active\",\n    })\n# Create another datastore item\nuser2 = datadog.DatastoreItem(\"user2\",\n    datastore_id=example.id,\n    item_key=\"user-456\",\n    value={\n        \"id\": \"user-456\",\n        \"username\": \"jane_doe\",\n        \"email\": \"jane@example.com\",\n        \"status\": \"active\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a datastore and add items to it\n    var example = new Datadog.Datastore(\"example\", new()\n    {\n        Name = \"users-datastore\",\n        Description = \"Datastore for user data\",\n        PrimaryColumnName = \"id\",\n        PrimaryKeyGenerationStrategy = \"none\",\n    });\n\n    // Create a datastore item with the primary key specified in the value map\n    var user1 = new Datadog.DatastoreItem(\"user1\", new()\n    {\n        DatastoreId = example.Id,\n        ItemKey = \"user-123\",\n        Value = \n        {\n            { \"id\", \"user-123\" },\n            { \"username\", \"john_doe\" },\n            { \"email\", \"john@example.com\" },\n            { \"status\", \"active\" },\n        },\n    });\n\n    // Create another datastore item\n    var user2 = new Datadog.DatastoreItem(\"user2\", new()\n    {\n        DatastoreId = example.Id,\n        ItemKey = \"user-456\",\n        Value = \n        {\n            { \"id\", \"user-456\" },\n            { \"username\", \"jane_doe\" },\n            { \"email\", \"jane@example.com\" },\n            { \"status\", \"active\" },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a datastore and add items to it\n\t\texample, err := datadog.NewDatastore(ctx, \"example\", \u0026datadog.DatastoreArgs{\n\t\t\tName:                         pulumi.String(\"users-datastore\"),\n\t\t\tDescription:                  pulumi.String(\"Datastore for user data\"),\n\t\t\tPrimaryColumnName:            pulumi.String(\"id\"),\n\t\t\tPrimaryKeyGenerationStrategy: pulumi.String(\"none\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a datastore item with the primary key specified in the value map\n\t\t_, err = datadog.NewDatastoreItem(ctx, \"user1\", \u0026datadog.DatastoreItemArgs{\n\t\t\tDatastoreId: example.ID(),\n\t\t\tItemKey:     pulumi.String(\"user-123\"),\n\t\t\tValue: pulumi.StringMap{\n\t\t\t\t\"id\":       pulumi.String(\"user-123\"),\n\t\t\t\t\"username\": pulumi.String(\"john_doe\"),\n\t\t\t\t\"email\":    pulumi.String(\"john@example.com\"),\n\t\t\t\t\"status\":   pulumi.String(\"active\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create another datastore item\n\t\t_, err = datadog.NewDatastoreItem(ctx, \"user2\", \u0026datadog.DatastoreItemArgs{\n\t\t\tDatastoreId: example.ID(),\n\t\t\tItemKey:     pulumi.String(\"user-456\"),\n\t\t\tValue: pulumi.StringMap{\n\t\t\t\t\"id\":       pulumi.String(\"user-456\"),\n\t\t\t\t\"username\": pulumi.String(\"jane_doe\"),\n\t\t\t\t\"email\":    pulumi.String(\"jane@example.com\"),\n\t\t\t\t\"status\":   pulumi.String(\"active\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Datastore;\nimport com.pulumi.datadog.DatastoreArgs;\nimport com.pulumi.datadog.DatastoreItem;\nimport com.pulumi.datadog.DatastoreItemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create a datastore and add items to it\n        var example = new Datastore(\"example\", DatastoreArgs.builder()\n            .name(\"users-datastore\")\n            .description(\"Datastore for user data\")\n            .primaryColumnName(\"id\")\n            .primaryKeyGenerationStrategy(\"none\")\n            .build());\n\n        // Create a datastore item with the primary key specified in the value map\n        var user1 = new DatastoreItem(\"user1\", DatastoreItemArgs.builder()\n            .datastoreId(example.id())\n            .itemKey(\"user-123\")\n            .value(Map.ofEntries(\n                Map.entry(\"id\", \"user-123\"),\n                Map.entry(\"username\", \"john_doe\"),\n                Map.entry(\"email\", \"john@example.com\"),\n                Map.entry(\"status\", \"active\")\n            ))\n            .build());\n\n        // Create another datastore item\n        var user2 = new DatastoreItem(\"user2\", DatastoreItemArgs.builder()\n            .datastoreId(example.id())\n            .itemKey(\"user-456\")\n            .value(Map.ofEntries(\n                Map.entry(\"id\", \"user-456\"),\n                Map.entry(\"username\", \"jane_doe\"),\n                Map.entry(\"email\", \"jane@example.com\"),\n                Map.entry(\"status\", \"active\")\n            ))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a datastore and add items to it\n  example:\n    type: datadog:Datastore\n    properties:\n      name: users-datastore\n      description: Datastore for user data\n      primaryColumnName: id\n      primaryKeyGenerationStrategy: none\n  # Create a datastore item with the primary key specified in the value map\n  user1:\n    type: datadog:DatastoreItem\n    properties:\n      datastoreId: ${example.id}\n      itemKey: user-123\n      value:\n        id: user-123\n        username: john_doe\n        email: john@example.com\n        status: active\n  # Create another datastore item\n  user2:\n    type: datadog:DatastoreItem\n    properties:\n      datastoreId: ${example.id}\n      itemKey: user-456\n      value:\n        id: user-456\n        username: jane_doe\n        email: jane@example.com\n        status: active\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/datastoreItem:DatastoreItem foo \"datastore-id:item-key\"\n```\n\n",
            "properties": {
                "datastoreId": {
                    "type": "string",
                    "description": "The unique identifier of the datastore containing this item.\n"
                },
                "itemKey": {
                    "type": "string",
                    "description": "The primary key value that identifies this item. Cannot exceed 256 characters.\n"
                },
                "value": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "The data content (as key-value pairs) of the datastore item.\n"
                }
            },
            "required": [
                "datastoreId",
                "itemKey",
                "value"
            ],
            "inputProperties": {
                "datastoreId": {
                    "type": "string",
                    "description": "The unique identifier of the datastore containing this item.\n"
                },
                "itemKey": {
                    "type": "string",
                    "description": "The primary key value that identifies this item. Cannot exceed 256 characters.\n"
                },
                "value": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "The data content (as key-value pairs) of the datastore item.\n"
                }
            },
            "requiredInputs": [
                "datastoreId",
                "itemKey",
                "value"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DatastoreItem resources.\n",
                "properties": {
                    "datastoreId": {
                        "type": "string",
                        "description": "The unique identifier of the datastore containing this item.\n"
                    },
                    "itemKey": {
                        "type": "string",
                        "description": "The primary key value that identifies this item. Cannot exceed 256 characters.\n"
                    },
                    "value": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        },
                        "description": "The data content (as key-value pairs) of the datastore item.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/deploymentGate:DeploymentGate": {
            "description": "Provides a Datadog DeploymentGate resource. This can be used to create and manage Datadog deployment_gate.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new deployment_gate resource\nconst foo = new datadog.DeploymentGate(\"foo\", {\n    dryRun: false,\n    env: \"production\",\n    identifier: \"my-gate\",\n    service: \"my-service\",\n    rules: [\n        {\n            name: \"fdd\",\n            type: \"faulty_deployment_detection\",\n            dryRun: false,\n            options: [{\n                duration: 1300,\n                excludedResources: [\"GET api/v1/test\"],\n            }],\n        },\n        {\n            name: \"monitor\",\n            type: \"monitor\",\n            dryRun: false,\n            options: [{\n                query: \"service:test-service\",\n                duration: 1300,\n            }],\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new deployment_gate resource\nfoo = datadog.DeploymentGate(\"foo\",\n    dry_run=False,\n    env=\"production\",\n    identifier=\"my-gate\",\n    service=\"my-service\",\n    rules=[\n        {\n            \"name\": \"fdd\",\n            \"type\": \"faulty_deployment_detection\",\n            \"dry_run\": False,\n            \"options\": [{\n                \"duration\": 1300,\n                \"excludedResources\": [\"GET api/v1/test\"],\n            }],\n        },\n        {\n            \"name\": \"monitor\",\n            \"type\": \"monitor\",\n            \"dry_run\": False,\n            \"options\": [{\n                \"query\": \"service:test-service\",\n                \"duration\": 1300,\n            }],\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new deployment_gate resource\n    var foo = new Datadog.DeploymentGate(\"foo\", new()\n    {\n        DryRun = false,\n        Env = \"production\",\n        Identifier = \"my-gate\",\n        Service = \"my-service\",\n        Rules = new[]\n        {\n            new Datadog.Inputs.DeploymentGateRuleArgs\n            {\n                Name = \"fdd\",\n                Type = \"faulty_deployment_detection\",\n                DryRun = false,\n                Options = new[]\n                {\n                    \n                    {\n                        { \"duration\", 1300 },\n                        { \"excludedResources\", new[]\n                        {\n                            \"GET api/v1/test\",\n                        } },\n                    },\n                },\n            },\n            new Datadog.Inputs.DeploymentGateRuleArgs\n            {\n                Name = \"monitor\",\n                Type = \"monitor\",\n                DryRun = false,\n                Options = new[]\n                {\n                    \n                    {\n                        { \"query\", \"service:test-service\" },\n                        { \"duration\", 1300 },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new deployment_gate resource\n\t\t_, err := datadog.NewDeploymentGate(ctx, \"foo\", \u0026datadog.DeploymentGateArgs{\n\t\t\tDryRun:     pulumi.Bool(false),\n\t\t\tEnv:        pulumi.String(\"production\"),\n\t\t\tIdentifier: pulumi.String(\"my-gate\"),\n\t\t\tService:    pulumi.String(\"my-service\"),\n\t\t\tRules: datadog.DeploymentGateRuleArray{\n\t\t\t\t\u0026datadog.DeploymentGateRuleArgs{\n\t\t\t\t\tName:   pulumi.String(\"fdd\"),\n\t\t\t\t\tType:   pulumi.String(\"faulty_deployment_detection\"),\n\t\t\t\t\tDryRun: pulumi.Bool(false),\n\t\t\t\t\tOptions: datadog.DeploymentGateRuleOptionsArgs{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"duration\": 1300,\n\t\t\t\t\t\t\t\"excludedResources\": []string{\n\t\t\t\t\t\t\t\t\"GET api/v1/test\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.DeploymentGateRuleArgs{\n\t\t\t\t\tName:   pulumi.String(\"monitor\"),\n\t\t\t\t\tType:   pulumi.String(\"monitor\"),\n\t\t\t\t\tDryRun: pulumi.Bool(false),\n\t\t\t\t\tOptions: datadog.DeploymentGateRuleOptionsArgs{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"query\":    \"service:test-service\",\n\t\t\t\t\t\t\t\"duration\": 1300,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DeploymentGate;\nimport com.pulumi.datadog.DeploymentGateArgs;\nimport com.pulumi.datadog.inputs.DeploymentGateRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new deployment_gate resource\n        var foo = new DeploymentGate(\"foo\", DeploymentGateArgs.builder()\n            .dryRun(false)\n            .env(\"production\")\n            .identifier(\"my-gate\")\n            .service(\"my-service\")\n            .rules(            \n                DeploymentGateRuleArgs.builder()\n                    .name(\"fdd\")\n                    .type(\"faulty_deployment_detection\")\n                    .dryRun(false)\n                    .options(DeploymentGateRuleOptionsArgs.builder()\n                        .duration(1300)\n                        .excludedResources(\"GET api/v1/test\")\n                        .build())\n                    .build(),\n                DeploymentGateRuleArgs.builder()\n                    .name(\"monitor\")\n                    .type(\"monitor\")\n                    .dryRun(false)\n                    .options(DeploymentGateRuleOptionsArgs.builder()\n                        .query(\"service:test-service\")\n                        .duration(1300)\n                        .build())\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new deployment_gate resource\n  foo:\n    type: datadog:DeploymentGate\n    properties:\n      dryRun: 'false'\n      env: production\n      identifier: my-gate\n      service: my-service\n      rules:\n        - name: fdd\n          type: faulty_deployment_detection\n          dryRun: false\n          options:\n            - duration: 1300\n              excludedResources:\n                - GET api/v1/test\n        - name: monitor\n          type: monitor\n          dryRun: false\n          options:\n            - query: service:test-service\n              duration: 1300\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/deploymentGate:DeploymentGate new_list \"\"\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "Creation timestamp of the deployment gate.\n"
                },
                "dryRun": {
                    "type": "boolean",
                    "description": "Enable Dry Run to test gate behavior without impacting deployments. The evaluation of a dry run gate always responds with a pass status, but the in-app result is the real status based on rules evaluation. This is particularly useful when performing an initial evaluation of the gate behavior without impacting the deployment pipeline.\n"
                },
                "env": {
                    "type": "string",
                    "description": "The target environment (example: dev).\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "Unique name for multiple gates on the same service/environment.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DeploymentGateRule:DeploymentGateRule"
                    },
                    "description": "Deployment rules for this gate.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The service name (example: transaction-backend).\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "Last update timestamp of the deployment gate.\n"
                }
            },
            "required": [
                "createdAt",
                "dryRun",
                "env",
                "identifier",
                "service",
                "updatedAt"
            ],
            "inputProperties": {
                "dryRun": {
                    "type": "boolean",
                    "description": "Enable Dry Run to test gate behavior without impacting deployments. The evaluation of a dry run gate always responds with a pass status, but the in-app result is the real status based on rules evaluation. This is particularly useful when performing an initial evaluation of the gate behavior without impacting the deployment pipeline.\n"
                },
                "env": {
                    "type": "string",
                    "description": "The target environment (example: dev).\n"
                },
                "identifier": {
                    "type": "string",
                    "description": "Unique name for multiple gates on the same service/environment.\n"
                },
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/DeploymentGateRule:DeploymentGateRule"
                    },
                    "description": "Deployment rules for this gate.\n"
                },
                "service": {
                    "type": "string",
                    "description": "The service name (example: transaction-backend).\n"
                }
            },
            "requiredInputs": [
                "env",
                "service"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DeploymentGate resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string",
                        "description": "Creation timestamp of the deployment gate.\n"
                    },
                    "dryRun": {
                        "type": "boolean",
                        "description": "Enable Dry Run to test gate behavior without impacting deployments. The evaluation of a dry run gate always responds with a pass status, but the in-app result is the real status based on rules evaluation. This is particularly useful when performing an initial evaluation of the gate behavior without impacting the deployment pipeline.\n"
                    },
                    "env": {
                        "type": "string",
                        "description": "The target environment (example: dev).\n"
                    },
                    "identifier": {
                        "type": "string",
                        "description": "Unique name for multiple gates on the same service/environment.\n"
                    },
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/DeploymentGateRule:DeploymentGateRule"
                        },
                        "description": "Deployment rules for this gate.\n"
                    },
                    "service": {
                        "type": "string",
                        "description": "The service name (example: transaction-backend).\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "Last update timestamp of the deployment gate.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/domainAllowlist:DomainAllowlist": {
            "description": "Provides the Datadog Email Domain Allowlist resource. This can be used to manage the Datadog Email Domain Allowlist.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst example = new datadog.DomainAllowlist(\"example\", {\n    enabled: true,\n    domains: [\"@gmail.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nexample = datadog.DomainAllowlist(\"example\",\n    enabled=True,\n    domains=[\"@gmail.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = new Datadog.DomainAllowlist(\"example\", new()\n    {\n        Enabled = true,\n        Domains = new[]\n        {\n            \"@gmail.com\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewDomainAllowlist(ctx, \"example\", \u0026datadog.DomainAllowlistArgs{\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tDomains: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"@gmail.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DomainAllowlist;\nimport com.pulumi.datadog.DomainAllowlistArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new DomainAllowlist(\"example\", DomainAllowlistArgs.builder()\n            .enabled(true)\n            .domains(\"@gmail.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: datadog:DomainAllowlist\n    properties:\n      enabled: true\n      domains:\n        - '@gmail.com'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "properties": {
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The domains within the domain allowlist.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Email Domain Allowlist is enabled.\n"
                }
            },
            "required": [
                "domains",
                "enabled"
            ],
            "inputProperties": {
                "domains": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The domains within the domain allowlist.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the Email Domain Allowlist is enabled.\n"
                }
            },
            "requiredInputs": [
                "domains",
                "enabled"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DomainAllowlist resources.\n",
                "properties": {
                    "domains": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The domains within the domain allowlist.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the Email Domain Allowlist is enabled.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/downtime:Downtime": {
            "description": "This resource is deprecated — use the \u003cspan pulumi-lang-nodejs=\"`datadog.DowntimeSchedule \" pulumi-lang-dotnet=\"`datadog.DowntimeSchedule \" pulumi-lang-go=\"`DowntimeSchedule \" pulumi-lang-python=\"`DowntimeSchedule \" pulumi-lang-yaml=\"`datadog.DowntimeSchedule \" pulumi-lang-java=\"`datadog.DowntimeSchedule \"\u003e`datadog.DowntimeSchedule \u003c/span\u003eresource` instead. Provides a Datadog downtime resource. This can be used to create and manage Datadog downtimes.\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/downtime:Downtime bytes_received_localhost 2081\n```\n\n",
            "properties": {
                "active": {
                    "type": "boolean",
                    "description": "When true indicates this downtime is being actively applied\n"
                },
                "activeChildId": {
                    "type": "integer",
                    "description": "The id corresponding to the downtime object definition of the active child for the original parent recurring downtime. This field will only exist on recurring downtimes.\n"
                },
                "disabled": {
                    "type": "boolean",
                    "description": "When true indicates this downtime is not being applied\n"
                },
                "end": {
                    "type": "integer",
                    "description": "Optionally specify an end date when this downtime should expire. Accepts a Unix timestamp in UTC.\n"
                },
                "endDate": {
                    "type": "string",
                    "description": "String representing date and time to end the downtime in RFC3339 format.\n"
                },
                "message": {
                    "type": "string",
                    "description": "An optional message to provide when creating the downtime, can include notification handles\n"
                },
                "monitorId": {
                    "type": "integer",
                    "description": "When specified, this downtime will only apply to this monitor\n"
                },
                "monitorTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of monitor tags (up to 32) to base the scheduled downtime on. Only monitors that have all selected tags are silenced\n"
                },
                "muteFirstRecoveryNotification": {
                    "type": "boolean",
                    "description": "When true the first recovery notification during the downtime will be muted Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "recurrence": {
                    "$ref": "#/types/datadog:index/DowntimeRecurrence:DowntimeRecurrence",
                    "description": "Optional recurring schedule for this downtime\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "specify the group scope to which this downtime applies. For everything use '*'\n"
                },
                "start": {
                    "type": "integer",
                    "description": "Specify when this downtime should start. Accepts a Unix timestamp in UTC.\n"
                },
                "startDate": {
                    "type": "string",
                    "description": "String representing date and time to start the downtime in RFC3339 format.\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "The timezone for the downtime. Follows IANA timezone database identifiers. Defaults to `\"UTC\"`.\n"
                }
            },
            "required": [
                "active",
                "activeChildId",
                "disabled",
                "scopes"
            ],
            "inputProperties": {
                "end": {
                    "type": "integer",
                    "description": "Optionally specify an end date when this downtime should expire. Accepts a Unix timestamp in UTC.\n"
                },
                "endDate": {
                    "type": "string",
                    "description": "String representing date and time to end the downtime in RFC3339 format.\n"
                },
                "message": {
                    "type": "string",
                    "description": "An optional message to provide when creating the downtime, can include notification handles\n"
                },
                "monitorId": {
                    "type": "integer",
                    "description": "When specified, this downtime will only apply to this monitor\n"
                },
                "monitorTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of monitor tags (up to 32) to base the scheduled downtime on. Only monitors that have all selected tags are silenced\n"
                },
                "muteFirstRecoveryNotification": {
                    "type": "boolean",
                    "description": "When true the first recovery notification during the downtime will be muted Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "recurrence": {
                    "$ref": "#/types/datadog:index/DowntimeRecurrence:DowntimeRecurrence",
                    "description": "Optional recurring schedule for this downtime\n"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "specify the group scope to which this downtime applies. For everything use '*'\n"
                },
                "start": {
                    "type": "integer",
                    "description": "Specify when this downtime should start. Accepts a Unix timestamp in UTC.\n"
                },
                "startDate": {
                    "type": "string",
                    "description": "String representing date and time to start the downtime in RFC3339 format.\n"
                },
                "timezone": {
                    "type": "string",
                    "description": "The timezone for the downtime. Follows IANA timezone database identifiers. Defaults to `\"UTC\"`.\n"
                }
            },
            "requiredInputs": [
                "scopes"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Downtime resources.\n",
                "properties": {
                    "active": {
                        "type": "boolean",
                        "description": "When true indicates this downtime is being actively applied\n"
                    },
                    "activeChildId": {
                        "type": "integer",
                        "description": "The id corresponding to the downtime object definition of the active child for the original parent recurring downtime. This field will only exist on recurring downtimes.\n"
                    },
                    "disabled": {
                        "type": "boolean",
                        "description": "When true indicates this downtime is not being applied\n"
                    },
                    "end": {
                        "type": "integer",
                        "description": "Optionally specify an end date when this downtime should expire. Accepts a Unix timestamp in UTC.\n"
                    },
                    "endDate": {
                        "type": "string",
                        "description": "String representing date and time to end the downtime in RFC3339 format.\n"
                    },
                    "message": {
                        "type": "string",
                        "description": "An optional message to provide when creating the downtime, can include notification handles\n"
                    },
                    "monitorId": {
                        "type": "integer",
                        "description": "When specified, this downtime will only apply to this monitor\n"
                    },
                    "monitorTags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of monitor tags (up to 32) to base the scheduled downtime on. Only monitors that have all selected tags are silenced\n"
                    },
                    "muteFirstRecoveryNotification": {
                        "type": "boolean",
                        "description": "When true the first recovery notification during the downtime will be muted Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "recurrence": {
                        "$ref": "#/types/datadog:index/DowntimeRecurrence:DowntimeRecurrence",
                        "description": "Optional recurring schedule for this downtime\n"
                    },
                    "scopes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "specify the group scope to which this downtime applies. For everything use '*'\n"
                    },
                    "start": {
                        "type": "integer",
                        "description": "Specify when this downtime should start. Accepts a Unix timestamp in UTC.\n"
                    },
                    "startDate": {
                        "type": "string",
                        "description": "String representing date and time to start the downtime in RFC3339 format.\n"
                    },
                    "timezone": {
                        "type": "string",
                        "description": "The timezone for the downtime. Follows IANA timezone database identifiers. Defaults to `\"UTC\"`.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/downtimeSchedule:DowntimeSchedule": {
            "description": "Provides a Datadog DowntimeSchedule resource. This can be used to create and manage Datadog downtimes.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new downtime_schedule resource\nconst downtimeScheduleExample = new datadog.DowntimeSchedule(\"downtime_schedule_example\", {\n    scope: \"env:us9-prod7 AND team:test123\",\n    monitorIdentifier: [{\n        monitorTags: [\n            \"test:123\",\n            \"data:test\",\n        ],\n    }],\n    recurringSchedule: [{\n        recurrences: [{\n            duration: \"1h\",\n            rrule: \"FREQ=DAILY;INTERVAL=1\",\n            start: \"2050-01-02T03:04:05\",\n        }],\n        timezone: \"America/New_York\",\n    }],\n    displayTimezone: \"America/New_York\",\n    message: \"Message about the downtime\",\n    muteFirstRecoveryNotification: true,\n    notifyEndStates: [\n        \"alert\",\n        \"warn\",\n    ],\n    notifyEndTypes: [\n        \"canceled\",\n        \"expired\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new downtime_schedule resource\ndowntime_schedule_example = datadog.DowntimeSchedule(\"downtime_schedule_example\",\n    scope=\"env:us9-prod7 AND team:test123\",\n    monitor_identifier=[{\n        \"monitorTags\": [\n            \"test:123\",\n            \"data:test\",\n        ],\n    }],\n    recurring_schedule=[{\n        \"recurrences\": [{\n            \"duration\": \"1h\",\n            \"rrule\": \"FREQ=DAILY;INTERVAL=1\",\n            \"start\": \"2050-01-02T03:04:05\",\n        }],\n        \"timezone\": \"America/New_York\",\n    }],\n    display_timezone=\"America/New_York\",\n    message=\"Message about the downtime\",\n    mute_first_recovery_notification=True,\n    notify_end_states=[\n        \"alert\",\n        \"warn\",\n    ],\n    notify_end_types=[\n        \"canceled\",\n        \"expired\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new downtime_schedule resource\n    var downtimeScheduleExample = new Datadog.DowntimeSchedule(\"downtime_schedule_example\", new()\n    {\n        Scope = \"env:us9-prod7 AND team:test123\",\n        MonitorIdentifier = new[]\n        {\n            \n            {\n                { \"monitorTags\", new[]\n                {\n                    \"test:123\",\n                    \"data:test\",\n                } },\n            },\n        },\n        RecurringSchedule = new[]\n        {\n            \n            {\n                { \"recurrences\", new[]\n                {\n                    \n                    {\n                        { \"duration\", \"1h\" },\n                        { \"rrule\", \"FREQ=DAILY;INTERVAL=1\" },\n                        { \"start\", \"2050-01-02T03:04:05\" },\n                    },\n                } },\n                { \"timezone\", \"America/New_York\" },\n            },\n        },\n        DisplayTimezone = \"America/New_York\",\n        Message = \"Message about the downtime\",\n        MuteFirstRecoveryNotification = true,\n        NotifyEndStates = new[]\n        {\n            \"alert\",\n            \"warn\",\n        },\n        NotifyEndTypes = new[]\n        {\n            \"canceled\",\n            \"expired\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new downtime_schedule resource\n\t\t_, err := datadog.NewDowntimeSchedule(ctx, \"downtime_schedule_example\", \u0026datadog.DowntimeScheduleArgs{\n\t\t\tScope: pulumi.String(\"env:us9-prod7 AND team:test123\"),\n\t\t\tMonitorIdentifier: datadog.DowntimeScheduleMonitorIdentifierArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"monitorTags\": []string{\n\t\t\t\t\t\t\"test:123\",\n\t\t\t\t\t\t\"data:test\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tRecurringSchedule: datadog.DowntimeScheduleRecurringScheduleArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"recurrences\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"duration\": \"1h\",\n\t\t\t\t\t\t\t\"rrule\":    \"FREQ=DAILY;INTERVAL=1\",\n\t\t\t\t\t\t\t\"start\":    \"2050-01-02T03:04:05\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t\"timezone\": \"America/New_York\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tDisplayTimezone:               pulumi.String(\"America/New_York\"),\n\t\t\tMessage:                       pulumi.String(\"Message about the downtime\"),\n\t\t\tMuteFirstRecoveryNotification: pulumi.Bool(true),\n\t\t\tNotifyEndStates: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"alert\"),\n\t\t\t\tpulumi.String(\"warn\"),\n\t\t\t},\n\t\t\tNotifyEndTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"canceled\"),\n\t\t\t\tpulumi.String(\"expired\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DowntimeSchedule;\nimport com.pulumi.datadog.DowntimeScheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new downtime_schedule resource\n        var downtimeScheduleExample = new DowntimeSchedule(\"downtimeScheduleExample\", DowntimeScheduleArgs.builder()\n            .scope(\"env:us9-prod7 AND team:test123\")\n            .monitorIdentifier(DowntimeScheduleMonitorIdentifierArgs.builder()\n                .monitorTags(                \n                    \"test:123\",\n                    \"data:test\")\n                .build())\n            .recurringSchedule(DowntimeScheduleRecurringScheduleArgs.builder()\n                .recurrences(DowntimeScheduleRecurringScheduleRecurrenceArgs.builder()\n                    .duration(\"1h\")\n                    .rrule(\"FREQ=DAILY;INTERVAL=1\")\n                    .start(\"2050-01-02T03:04:05\")\n                    .build())\n                .timezone(\"America/New_York\")\n                .build())\n            .displayTimezone(\"America/New_York\")\n            .message(\"Message about the downtime\")\n            .muteFirstRecoveryNotification(true)\n            .notifyEndStates(            \n                \"alert\",\n                \"warn\")\n            .notifyEndTypes(            \n                \"canceled\",\n                \"expired\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new downtime_schedule resource\n  downtimeScheduleExample:\n    type: datadog:DowntimeSchedule\n    name: downtime_schedule_example\n    properties:\n      scope: env:us9-prod7 AND team:test123\n      monitorIdentifier:\n        - monitorTags:\n            - test:123\n            - data:test\n      recurringSchedule:\n        - recurrences:\n            - duration: 1h\n              rrule: FREQ=DAILY;INTERVAL=1\n              start: 2050-01-02T03:04:05\n          timezone: America/New_York\n      displayTimezone: America/New_York\n      message: Message about the downtime\n      muteFirstRecoveryNotification: true\n      notifyEndStates:\n        - alert\n        - warn\n      notifyEndTypes:\n        - canceled\n        - expired\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/downtimeSchedule:DowntimeSchedule new_list \"00e000000-0000-1234-0000-000000000000\"\n```\n\n",
            "properties": {
                "displayTimezone": {
                    "type": "string",
                    "description": "The timezone in which to display the downtime's start and end times in Datadog applications. This is not used as an offset for scheduling.\n"
                },
                "message": {
                    "type": "string",
                    "description": "A message to include with notifications for this downtime. Email notifications can be sent to specific users by using the same `@username` notation as events.\n"
                },
                "monitorIdentifier": {
                    "$ref": "#/types/datadog:index/DowntimeScheduleMonitorIdentifier:DowntimeScheduleMonitorIdentifier"
                },
                "muteFirstRecoveryNotification": {
                    "type": "boolean",
                    "description": "If the first recovery notification during a downtime should be muted.\n"
                },
                "notifyEndStates": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "States that will trigger a monitor notification when the \u003cspan pulumi-lang-nodejs=\"`notifyEndTypes`\" pulumi-lang-dotnet=\"`NotifyEndTypes`\" pulumi-lang-go=\"`notifyEndTypes`\" pulumi-lang-python=\"`notify_end_types`\" pulumi-lang-yaml=\"`notifyEndTypes`\" pulumi-lang-java=\"`notifyEndTypes`\"\u003e`notifyEndTypes`\u003c/span\u003e action occurs.\n"
                },
                "notifyEndTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Actions that will trigger a monitor notification if the downtime is in the \u003cspan pulumi-lang-nodejs=\"`notifyEndTypes`\" pulumi-lang-dotnet=\"`NotifyEndTypes`\" pulumi-lang-go=\"`notifyEndTypes`\" pulumi-lang-python=\"`notify_end_types`\" pulumi-lang-yaml=\"`notifyEndTypes`\" pulumi-lang-java=\"`notifyEndTypes`\"\u003e`notifyEndTypes`\u003c/span\u003e state.\n"
                },
                "oneTimeSchedule": {
                    "$ref": "#/types/datadog:index/DowntimeScheduleOneTimeSchedule:DowntimeScheduleOneTimeSchedule"
                },
                "recurringSchedule": {
                    "$ref": "#/types/datadog:index/DowntimeScheduleRecurringSchedule:DowntimeScheduleRecurringSchedule"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope to which the downtime applies. Must follow the [common search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/).\n"
                }
            },
            "required": [
                "displayTimezone",
                "monitorIdentifier",
                "muteFirstRecoveryNotification",
                "notifyEndStates",
                "notifyEndTypes",
                "scope"
            ],
            "inputProperties": {
                "displayTimezone": {
                    "type": "string",
                    "description": "The timezone in which to display the downtime's start and end times in Datadog applications. This is not used as an offset for scheduling.\n"
                },
                "message": {
                    "type": "string",
                    "description": "A message to include with notifications for this downtime. Email notifications can be sent to specific users by using the same `@username` notation as events.\n"
                },
                "monitorIdentifier": {
                    "$ref": "#/types/datadog:index/DowntimeScheduleMonitorIdentifier:DowntimeScheduleMonitorIdentifier"
                },
                "muteFirstRecoveryNotification": {
                    "type": "boolean",
                    "description": "If the first recovery notification during a downtime should be muted.\n"
                },
                "notifyEndStates": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "States that will trigger a monitor notification when the \u003cspan pulumi-lang-nodejs=\"`notifyEndTypes`\" pulumi-lang-dotnet=\"`NotifyEndTypes`\" pulumi-lang-go=\"`notifyEndTypes`\" pulumi-lang-python=\"`notify_end_types`\" pulumi-lang-yaml=\"`notifyEndTypes`\" pulumi-lang-java=\"`notifyEndTypes`\"\u003e`notifyEndTypes`\u003c/span\u003e action occurs.\n"
                },
                "notifyEndTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Actions that will trigger a monitor notification if the downtime is in the \u003cspan pulumi-lang-nodejs=\"`notifyEndTypes`\" pulumi-lang-dotnet=\"`NotifyEndTypes`\" pulumi-lang-go=\"`notifyEndTypes`\" pulumi-lang-python=\"`notify_end_types`\" pulumi-lang-yaml=\"`notifyEndTypes`\" pulumi-lang-java=\"`notifyEndTypes`\"\u003e`notifyEndTypes`\u003c/span\u003e state.\n"
                },
                "oneTimeSchedule": {
                    "$ref": "#/types/datadog:index/DowntimeScheduleOneTimeSchedule:DowntimeScheduleOneTimeSchedule"
                },
                "recurringSchedule": {
                    "$ref": "#/types/datadog:index/DowntimeScheduleRecurringSchedule:DowntimeScheduleRecurringSchedule"
                },
                "scope": {
                    "type": "string",
                    "description": "The scope to which the downtime applies. Must follow the [common search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/).\n"
                }
            },
            "requiredInputs": [
                "monitorIdentifier",
                "scope"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering DowntimeSchedule resources.\n",
                "properties": {
                    "displayTimezone": {
                        "type": "string",
                        "description": "The timezone in which to display the downtime's start and end times in Datadog applications. This is not used as an offset for scheduling.\n"
                    },
                    "message": {
                        "type": "string",
                        "description": "A message to include with notifications for this downtime. Email notifications can be sent to specific users by using the same `@username` notation as events.\n"
                    },
                    "monitorIdentifier": {
                        "$ref": "#/types/datadog:index/DowntimeScheduleMonitorIdentifier:DowntimeScheduleMonitorIdentifier"
                    },
                    "muteFirstRecoveryNotification": {
                        "type": "boolean",
                        "description": "If the first recovery notification during a downtime should be muted.\n"
                    },
                    "notifyEndStates": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "States that will trigger a monitor notification when the \u003cspan pulumi-lang-nodejs=\"`notifyEndTypes`\" pulumi-lang-dotnet=\"`NotifyEndTypes`\" pulumi-lang-go=\"`notifyEndTypes`\" pulumi-lang-python=\"`notify_end_types`\" pulumi-lang-yaml=\"`notifyEndTypes`\" pulumi-lang-java=\"`notifyEndTypes`\"\u003e`notifyEndTypes`\u003c/span\u003e action occurs.\n"
                    },
                    "notifyEndTypes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Actions that will trigger a monitor notification if the downtime is in the \u003cspan pulumi-lang-nodejs=\"`notifyEndTypes`\" pulumi-lang-dotnet=\"`NotifyEndTypes`\" pulumi-lang-go=\"`notifyEndTypes`\" pulumi-lang-python=\"`notify_end_types`\" pulumi-lang-yaml=\"`notifyEndTypes`\" pulumi-lang-java=\"`notifyEndTypes`\"\u003e`notifyEndTypes`\u003c/span\u003e state.\n"
                    },
                    "oneTimeSchedule": {
                        "$ref": "#/types/datadog:index/DowntimeScheduleOneTimeSchedule:DowntimeScheduleOneTimeSchedule"
                    },
                    "recurringSchedule": {
                        "$ref": "#/types/datadog:index/DowntimeScheduleRecurringSchedule:DowntimeScheduleRecurringSchedule"
                    },
                    "scope": {
                        "type": "string",
                        "description": "The scope to which the downtime applies. Must follow the [common search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/).\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/gcpUcConfig:GcpUcConfig": {
            "description": "Provides a Datadog GcpUcConfig resource. This can be used to create and manage Datadog gcp_uc_config.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new GCP Usage Cost configuration resource\nconst example = new datadog.GcpUcConfig(\"example\", {\n    billingAccountId: \"123456_ABCDEF_123456\",\n    bucketName: \"my-gcp-cost-bucket\",\n    exportDatasetName: \"billing_export\",\n    exportPrefix: \"datadog_cloud_cost_detailed_usage_export\",\n    exportProjectName: \"my-gcp-project\",\n    serviceAccount: \"datadog-cost-management@my-gcp-project.iam.gserviceaccount.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new GCP Usage Cost configuration resource\nexample = datadog.GcpUcConfig(\"example\",\n    billing_account_id=\"123456_ABCDEF_123456\",\n    bucket_name=\"my-gcp-cost-bucket\",\n    export_dataset_name=\"billing_export\",\n    export_prefix=\"datadog_cloud_cost_detailed_usage_export\",\n    export_project_name=\"my-gcp-project\",\n    service_account=\"datadog-cost-management@my-gcp-project.iam.gserviceaccount.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new GCP Usage Cost configuration resource\n    var example = new Datadog.GcpUcConfig(\"example\", new()\n    {\n        BillingAccountId = \"123456_ABCDEF_123456\",\n        BucketName = \"my-gcp-cost-bucket\",\n        ExportDatasetName = \"billing_export\",\n        ExportPrefix = \"datadog_cloud_cost_detailed_usage_export\",\n        ExportProjectName = \"my-gcp-project\",\n        ServiceAccount = \"datadog-cost-management@my-gcp-project.iam.gserviceaccount.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new GCP Usage Cost configuration resource\n\t\t_, err := datadog.NewGcpUcConfig(ctx, \"example\", \u0026datadog.GcpUcConfigArgs{\n\t\t\tBillingAccountId:  pulumi.String(\"123456_ABCDEF_123456\"),\n\t\t\tBucketName:        pulumi.String(\"my-gcp-cost-bucket\"),\n\t\t\tExportDatasetName: pulumi.String(\"billing_export\"),\n\t\t\tExportPrefix:      pulumi.String(\"datadog_cloud_cost_detailed_usage_export\"),\n\t\t\tExportProjectName: pulumi.String(\"my-gcp-project\"),\n\t\t\tServiceAccount:    pulumi.String(\"datadog-cost-management@my-gcp-project.iam.gserviceaccount.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.GcpUcConfig;\nimport com.pulumi.datadog.GcpUcConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new GCP Usage Cost configuration resource\n        var example = new GcpUcConfig(\"example\", GcpUcConfigArgs.builder()\n            .billingAccountId(\"123456_ABCDEF_123456\")\n            .bucketName(\"my-gcp-cost-bucket\")\n            .exportDatasetName(\"billing_export\")\n            .exportPrefix(\"datadog_cloud_cost_detailed_usage_export\")\n            .exportProjectName(\"my-gcp-project\")\n            .serviceAccount(\"datadog-cost-management@my-gcp-project.iam.gserviceaccount.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new GCP Usage Cost configuration resource\n  example:\n    type: datadog:GcpUcConfig\n    properties:\n      billingAccountId: 123456_ABCDEF_123456\n      bucketName: my-gcp-cost-bucket\n      exportDatasetName: billing_export\n      exportPrefix: datadog_cloud_cost_detailed_usage_export\n      exportProjectName: my-gcp-project\n      serviceAccount: datadog-cost-management@my-gcp-project.iam.gserviceaccount.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/gcpUcConfig:GcpUcConfig example \u003ccloud_account_id\u003e\n```\n\n",
            "properties": {
                "billingAccountId": {
                    "type": "string",
                    "description": "The Google Cloud account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "The Google Cloud bucket name used to store the Usage Cost export.\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "The timestamp when the GCP UC configuration was created.\n"
                },
                "dataset": {
                    "type": "string",
                    "description": "The dataset name used for the GCP Usage Cost export.\n"
                },
                "errorMessages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of error messages if the GCP UC configuration encountered any issues during setup or data processing.\n"
                },
                "exportDatasetName": {
                    "type": "string",
                    "description": "The export dataset name used for the Google Cloud Usage Cost report.\n"
                },
                "exportPrefix": {
                    "type": "string",
                    "description": "The export prefix used for the Google Cloud Usage Cost report.\n"
                },
                "exportProjectName": {
                    "type": "string",
                    "description": "The name of the Google Cloud Usage Cost report.\n"
                },
                "months": {
                    "type": "integer",
                    "description": "The number of months of usage data to include in the export.\n"
                },
                "serviceAccount": {
                    "type": "string",
                    "description": "The unique Google Cloud service account email.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The current status of the GCP UC configuration.\n"
                },
                "statusUpdatedAt": {
                    "type": "string",
                    "description": "The timestamp when the configuration status was last updated.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "The timestamp when the GCP UC configuration was last modified.\n"
                }
            },
            "required": [
                "billingAccountId",
                "bucketName",
                "createdAt",
                "dataset",
                "errorMessages",
                "exportDatasetName",
                "exportProjectName",
                "months",
                "serviceAccount",
                "status",
                "statusUpdatedAt",
                "updatedAt"
            ],
            "inputProperties": {
                "billingAccountId": {
                    "type": "string",
                    "description": "The Google Cloud account ID.\n"
                },
                "bucketName": {
                    "type": "string",
                    "description": "The Google Cloud bucket name used to store the Usage Cost export.\n"
                },
                "exportDatasetName": {
                    "type": "string",
                    "description": "The export dataset name used for the Google Cloud Usage Cost report.\n"
                },
                "exportPrefix": {
                    "type": "string",
                    "description": "The export prefix used for the Google Cloud Usage Cost report.\n"
                },
                "exportProjectName": {
                    "type": "string",
                    "description": "The name of the Google Cloud Usage Cost report.\n"
                },
                "serviceAccount": {
                    "type": "string",
                    "description": "The unique Google Cloud service account email.\n"
                }
            },
            "requiredInputs": [
                "billingAccountId",
                "bucketName",
                "exportDatasetName",
                "exportProjectName",
                "serviceAccount"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering GcpUcConfig resources.\n",
                "properties": {
                    "billingAccountId": {
                        "type": "string",
                        "description": "The Google Cloud account ID.\n"
                    },
                    "bucketName": {
                        "type": "string",
                        "description": "The Google Cloud bucket name used to store the Usage Cost export.\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "The timestamp when the GCP UC configuration was created.\n"
                    },
                    "dataset": {
                        "type": "string",
                        "description": "The dataset name used for the GCP Usage Cost export.\n"
                    },
                    "errorMessages": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of error messages if the GCP UC configuration encountered any issues during setup or data processing.\n"
                    },
                    "exportDatasetName": {
                        "type": "string",
                        "description": "The export dataset name used for the Google Cloud Usage Cost report.\n"
                    },
                    "exportPrefix": {
                        "type": "string",
                        "description": "The export prefix used for the Google Cloud Usage Cost report.\n"
                    },
                    "exportProjectName": {
                        "type": "string",
                        "description": "The name of the Google Cloud Usage Cost report.\n"
                    },
                    "months": {
                        "type": "integer",
                        "description": "The number of months of usage data to include in the export.\n"
                    },
                    "serviceAccount": {
                        "type": "string",
                        "description": "The unique Google Cloud service account email.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The current status of the GCP UC configuration.\n"
                    },
                    "statusUpdatedAt": {
                        "type": "string",
                        "description": "The timestamp when the configuration status was last updated.\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "The timestamp when the GCP UC configuration was last modified.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/incidentNotificationRule:IncidentNotificationRule": {
            "description": "Provides a Datadog incident notification rule resource. This can be used to create and manage Datadog incident notification rules.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst example = new datadog.IncidentType(\"example\", {\n    name: \"My Incident Type\",\n    description: \"Incident type for critical production issues\",\n});\nconst exampleIncidentNotificationTemplate = new datadog.IncidentNotificationTemplate(\"example\", {\n    name: \"My Notification Template\",\n    subject: \"SEV-1 Incident: {{incident.title}}\",\n    content: `An incident has been declared.\n\nTitle: {{incident.title}}\nSeverity: {{incident.severity}}\nStatus: {{incident.status}}\n\nPlease join the incident channel for updates.\n`,\n    category: \"alert\",\n    incidentType: example.id,\n});\nconst exampleIncidentNotificationRule = new datadog.IncidentNotificationRule(\"example\", {\n    enabled: true,\n    trigger: \"incident_created_trigger\",\n    visibility: \"organization\",\n    handles: [\n        \"@team-email@company.com\",\n        \"@slack-channel-alerts\",\n        \"@pagerduty-service\",\n    ],\n    conditions: [\n        {\n            field: \"severity\",\n            values: [\n                \"SEV-1\",\n                \"SEV-2\",\n            ],\n        },\n        {\n            field: \"services\",\n            values: [\n                \"web-service\",\n                \"api-service\",\n                \"database-service\",\n            ],\n        },\n    ],\n    renotifyOns: [\n        \"status\",\n        \"severity\",\n    ],\n    incidentType: example.id,\n    notificationTemplate: exampleIncidentNotificationTemplate.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nexample = datadog.IncidentType(\"example\",\n    name=\"My Incident Type\",\n    description=\"Incident type for critical production issues\")\nexample_incident_notification_template = datadog.IncidentNotificationTemplate(\"example\",\n    name=\"My Notification Template\",\n    subject=\"SEV-1 Incident: {{incident.title}}\",\n    content=\"\"\"An incident has been declared.\n\nTitle: {{incident.title}}\nSeverity: {{incident.severity}}\nStatus: {{incident.status}}\n\nPlease join the incident channel for updates.\n\"\"\",\n    category=\"alert\",\n    incident_type=example.id)\nexample_incident_notification_rule = datadog.IncidentNotificationRule(\"example\",\n    enabled=True,\n    trigger=\"incident_created_trigger\",\n    visibility=\"organization\",\n    handles=[\n        \"@team-email@company.com\",\n        \"@slack-channel-alerts\",\n        \"@pagerduty-service\",\n    ],\n    conditions=[\n        {\n            \"field\": \"severity\",\n            \"values\": [\n                \"SEV-1\",\n                \"SEV-2\",\n            ],\n        },\n        {\n            \"field\": \"services\",\n            \"values\": [\n                \"web-service\",\n                \"api-service\",\n                \"database-service\",\n            ],\n        },\n    ],\n    renotify_ons=[\n        \"status\",\n        \"severity\",\n    ],\n    incident_type=example.id,\n    notification_template=example_incident_notification_template.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = new Datadog.IncidentType(\"example\", new()\n    {\n        Name = \"My Incident Type\",\n        Description = \"Incident type for critical production issues\",\n    });\n\n    var exampleIncidentNotificationTemplate = new Datadog.IncidentNotificationTemplate(\"example\", new()\n    {\n        Name = \"My Notification Template\",\n        Subject = \"SEV-1 Incident: {{incident.title}}\",\n        Content = @\"An incident has been declared.\n\nTitle: {{incident.title}}\nSeverity: {{incident.severity}}\nStatus: {{incident.status}}\n\nPlease join the incident channel for updates.\n\",\n        Category = \"alert\",\n        IncidentType = example.Id,\n    });\n\n    var exampleIncidentNotificationRule = new Datadog.IncidentNotificationRule(\"example\", new()\n    {\n        Enabled = true,\n        Trigger = \"incident_created_trigger\",\n        Visibility = \"organization\",\n        Handles = new[]\n        {\n            \"@team-email@company.com\",\n            \"@slack-channel-alerts\",\n            \"@pagerduty-service\",\n        },\n        Conditions = new[]\n        {\n            new Datadog.Inputs.IncidentNotificationRuleConditionArgs\n            {\n                Field = \"severity\",\n                Values = new[]\n                {\n                    \"SEV-1\",\n                    \"SEV-2\",\n                },\n            },\n            new Datadog.Inputs.IncidentNotificationRuleConditionArgs\n            {\n                Field = \"services\",\n                Values = new[]\n                {\n                    \"web-service\",\n                    \"api-service\",\n                    \"database-service\",\n                },\n            },\n        },\n        RenotifyOns = new[]\n        {\n            \"status\",\n            \"severity\",\n        },\n        IncidentType = example.Id,\n        NotificationTemplate = exampleIncidentNotificationTemplate.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := datadog.NewIncidentType(ctx, \"example\", \u0026datadog.IncidentTypeArgs{\n\t\t\tName:        pulumi.String(\"My Incident Type\"),\n\t\t\tDescription: pulumi.String(\"Incident type for critical production issues\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIncidentNotificationTemplate, err := datadog.NewIncidentNotificationTemplate(ctx, \"example\", \u0026datadog.IncidentNotificationTemplateArgs{\n\t\t\tName:    pulumi.String(\"My Notification Template\"),\n\t\t\tSubject: pulumi.String(\"SEV-1 Incident: {{incident.title}}\"),\n\t\t\tContent: pulumi.String(`An incident has been declared.\n\nTitle: {{incident.title}}\nSeverity: {{incident.severity}}\nStatus: {{incident.status}}\n\nPlease join the incident channel for updates.\n`),\n\t\t\tCategory:     pulumi.String(\"alert\"),\n\t\t\tIncidentType: example.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datadog.NewIncidentNotificationRule(ctx, \"example\", \u0026datadog.IncidentNotificationRuleArgs{\n\t\t\tEnabled:    pulumi.Bool(true),\n\t\t\tTrigger:    pulumi.String(\"incident_created_trigger\"),\n\t\t\tVisibility: pulumi.String(\"organization\"),\n\t\t\tHandles: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"@team-email@company.com\"),\n\t\t\t\tpulumi.String(\"@slack-channel-alerts\"),\n\t\t\t\tpulumi.String(\"@pagerduty-service\"),\n\t\t\t},\n\t\t\tConditions: datadog.IncidentNotificationRuleConditionArray{\n\t\t\t\t\u0026datadog.IncidentNotificationRuleConditionArgs{\n\t\t\t\t\tField: pulumi.String(\"severity\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"SEV-1\"),\n\t\t\t\t\t\tpulumi.String(\"SEV-2\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.IncidentNotificationRuleConditionArgs{\n\t\t\t\t\tField: pulumi.String(\"services\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"web-service\"),\n\t\t\t\t\t\tpulumi.String(\"api-service\"),\n\t\t\t\t\t\tpulumi.String(\"database-service\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tRenotifyOns: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"status\"),\n\t\t\t\tpulumi.String(\"severity\"),\n\t\t\t},\n\t\t\tIncidentType:         example.ID(),\n\t\t\tNotificationTemplate: exampleIncidentNotificationTemplate.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.IncidentType;\nimport com.pulumi.datadog.IncidentTypeArgs;\nimport com.pulumi.datadog.IncidentNotificationTemplate;\nimport com.pulumi.datadog.IncidentNotificationTemplateArgs;\nimport com.pulumi.datadog.IncidentNotificationRule;\nimport com.pulumi.datadog.IncidentNotificationRuleArgs;\nimport com.pulumi.datadog.inputs.IncidentNotificationRuleConditionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new IncidentType(\"example\", IncidentTypeArgs.builder()\n            .name(\"My Incident Type\")\n            .description(\"Incident type for critical production issues\")\n            .build());\n\n        var exampleIncidentNotificationTemplate = new IncidentNotificationTemplate(\"exampleIncidentNotificationTemplate\", IncidentNotificationTemplateArgs.builder()\n            .name(\"My Notification Template\")\n            .subject(\"SEV-1 Incident: {{incident.title}}\")\n            .content(\"\"\"\nAn incident has been declared.\n\nTitle: {{incident.title}}\nSeverity: {{incident.severity}}\nStatus: {{incident.status}}\n\nPlease join the incident channel for updates.\n            \"\"\")\n            .category(\"alert\")\n            .incidentType(example.id())\n            .build());\n\n        var exampleIncidentNotificationRule = new IncidentNotificationRule(\"exampleIncidentNotificationRule\", IncidentNotificationRuleArgs.builder()\n            .enabled(true)\n            .trigger(\"incident_created_trigger\")\n            .visibility(\"organization\")\n            .handles(            \n                \"@team-email@company.com\",\n                \"@slack-channel-alerts\",\n                \"@pagerduty-service\")\n            .conditions(            \n                IncidentNotificationRuleConditionArgs.builder()\n                    .field(\"severity\")\n                    .values(                    \n                        \"SEV-1\",\n                        \"SEV-2\")\n                    .build(),\n                IncidentNotificationRuleConditionArgs.builder()\n                    .field(\"services\")\n                    .values(                    \n                        \"web-service\",\n                        \"api-service\",\n                        \"database-service\")\n                    .build())\n            .renotifyOns(            \n                \"status\",\n                \"severity\")\n            .incidentType(example.id())\n            .notificationTemplate(exampleIncidentNotificationTemplate.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: datadog:IncidentType\n    properties:\n      name: My Incident Type\n      description: Incident type for critical production issues\n  exampleIncidentNotificationTemplate:\n    type: datadog:IncidentNotificationTemplate\n    name: example\n    properties:\n      name: My Notification Template\n      subject: 'SEV-1 Incident: {{incident.title}}'\n      content: |\n        An incident has been declared.\n\n        Title: {{incident.title}}\n        Severity: {{incident.severity}}\n        Status: {{incident.status}}\n\n        Please join the incident channel for updates.\n      category: alert\n      incidentType: ${example.id}\n  exampleIncidentNotificationRule:\n    type: datadog:IncidentNotificationRule\n    name: example\n    properties:\n      enabled: true\n      trigger: incident_created_trigger\n      visibility: organization\n      handles:\n        - '@team-email@company.com'\n        - '@slack-channel-alerts'\n        - '@pagerduty-service'\n      conditions:\n        - field: severity\n          values:\n            - SEV-1\n            - SEV-2\n        - field: services\n          values:\n            - web-service\n            - api-service\n            - database-service\n      renotifyOns:\n        - status\n        - severity\n      incidentType: ${example.id}\n      notificationTemplate: ${exampleIncidentNotificationTemplate.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/incidentNotificationRule:IncidentNotificationRule example \"00000000-0000-0000-0000-000000000000\"\n```\n\n",
            "properties": {
                "conditions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/IncidentNotificationRuleCondition:IncidentNotificationRuleCondition"
                    },
                    "description": "The conditions that trigger this notification rule. At least one condition is required.\n"
                },
                "created": {
                    "type": "string",
                    "description": "Timestamp when the notification rule was created.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the notification rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "handles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The notification handles (targets) for this rule. Examples: @team-email@company.com, @slack-channel.\n"
                },
                "incidentType": {
                    "type": "string",
                    "description": "The ID of the incident type this notification rule is associated with.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "Timestamp when the notification rule was last modified.\n"
                },
                "notificationTemplate": {
                    "type": "string",
                    "description": "The ID of the notification template to use for this rule.\n"
                },
                "renotifyOns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of incident fields that trigger re-notification when changed. Valid values are: status, severity, customer*impact, title, description, detected, root*cause, services, state.\n"
                },
                "trigger": {
                    "type": "string",
                    "description": "The trigger event for this notification rule. Valid values are: incident*created*trigger, incident*saved*trigger.\n"
                },
                "visibility": {
                    "type": "string",
                    "description": "The visibility of the notification rule. Valid values are: all, organization, private. Defaults to organization.\n"
                }
            },
            "required": [
                "created",
                "enabled",
                "handles",
                "incidentType",
                "modified",
                "trigger",
                "visibility"
            ],
            "inputProperties": {
                "conditions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/IncidentNotificationRuleCondition:IncidentNotificationRuleCondition"
                    },
                    "description": "The conditions that trigger this notification rule. At least one condition is required.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the notification rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "handles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The notification handles (targets) for this rule. Examples: @team-email@company.com, @slack-channel.\n"
                },
                "incidentType": {
                    "type": "string",
                    "description": "The ID of the incident type this notification rule is associated with.\n"
                },
                "notificationTemplate": {
                    "type": "string",
                    "description": "The ID of the notification template to use for this rule.\n"
                },
                "renotifyOns": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of incident fields that trigger re-notification when changed. Valid values are: status, severity, customer*impact, title, description, detected, root*cause, services, state.\n"
                },
                "trigger": {
                    "type": "string",
                    "description": "The trigger event for this notification rule. Valid values are: incident*created*trigger, incident*saved*trigger.\n"
                },
                "visibility": {
                    "type": "string",
                    "description": "The visibility of the notification rule. Valid values are: all, organization, private. Defaults to organization.\n"
                }
            },
            "requiredInputs": [
                "handles",
                "incidentType",
                "trigger"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IncidentNotificationRule resources.\n",
                "properties": {
                    "conditions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/IncidentNotificationRuleCondition:IncidentNotificationRuleCondition"
                        },
                        "description": "The conditions that trigger this notification rule. At least one condition is required.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "Timestamp when the notification rule was created.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the notification rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "handles": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The notification handles (targets) for this rule. Examples: @team-email@company.com, @slack-channel.\n"
                    },
                    "incidentType": {
                        "type": "string",
                        "description": "The ID of the incident type this notification rule is associated with.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "Timestamp when the notification rule was last modified.\n"
                    },
                    "notificationTemplate": {
                        "type": "string",
                        "description": "The ID of the notification template to use for this rule.\n"
                    },
                    "renotifyOns": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of incident fields that trigger re-notification when changed. Valid values are: status, severity, customer*impact, title, description, detected, root*cause, services, state.\n"
                    },
                    "trigger": {
                        "type": "string",
                        "description": "The trigger event for this notification rule. Valid values are: incident*created*trigger, incident*saved*trigger.\n"
                    },
                    "visibility": {
                        "type": "string",
                        "description": "The visibility of the notification rule. Valid values are: all, organization, private. Defaults to organization.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/incidentNotificationTemplate:IncidentNotificationTemplate": {
            "description": "Provides a Datadog incident notification template resource. This can be used to create and manage Datadog incident notification templates.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Reference incident type\nconst security = new datadog.IncidentType(\"security\", {\n    name: \"Security Incident\",\n    description: \"Security-related incidents requiring immediate attention\",\n});\n// Create a notification template for incident alerts\nconst securityIncident = new datadog.IncidentNotificationTemplate(\"security_incident\", {\n    name: \"Security Incident Template\",\n    subject: \"SEV-1 Security Incident: {{incident.title}}\",\n    content: `🚨 SECURITY INCIDENT DECLARED 🚨\n\n**Incident Details:**\n- Title: {{incident.title}}\n- Severity: {{incident.severity}}\n- Status: {{incident.status}}\n- Declared at: {{incident.created}}\n\n**Affected Services:**\n{{#each incident.services}}\n- {{name}}\n{{/each}}\n\n**Commander:** {{incident.commander}}\n\n**Next Steps:**\n1. Join the incident Slack channel: #incident-{{incident.id}}\n2. Review the incident details in Datadog\n3. Await further instructions from the incident commander\n\nFor more information: {{incident.url}}\n`,\n    category: \"alert\",\n    incidentType: security.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Reference incident type\nsecurity = datadog.IncidentType(\"security\",\n    name=\"Security Incident\",\n    description=\"Security-related incidents requiring immediate attention\")\n# Create a notification template for incident alerts\nsecurity_incident = datadog.IncidentNotificationTemplate(\"security_incident\",\n    name=\"Security Incident Template\",\n    subject=\"SEV-1 Security Incident: {{incident.title}}\",\n    content=\"\"\"🚨 SECURITY INCIDENT DECLARED 🚨\n\n**Incident Details:**\n- Title: {{incident.title}}\n- Severity: {{incident.severity}}\n- Status: {{incident.status}}\n- Declared at: {{incident.created}}\n\n**Affected Services:**\n{{#each incident.services}}\n- {{name}}\n{{/each}}\n\n**Commander:** {{incident.commander}}\n\n**Next Steps:**\n1. Join the incident Slack channel: #incident-{{incident.id}}\n2. Review the incident details in Datadog\n3. Await further instructions from the incident commander\n\nFor more information: {{incident.url}}\n\"\"\",\n    category=\"alert\",\n    incident_type=security.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Reference incident type\n    var security = new Datadog.IncidentType(\"security\", new()\n    {\n        Name = \"Security Incident\",\n        Description = \"Security-related incidents requiring immediate attention\",\n    });\n\n    // Create a notification template for incident alerts\n    var securityIncident = new Datadog.IncidentNotificationTemplate(\"security_incident\", new()\n    {\n        Name = \"Security Incident Template\",\n        Subject = \"SEV-1 Security Incident: {{incident.title}}\",\n        Content = @\"🚨 SECURITY INCIDENT DECLARED 🚨\n\n**Incident Details:**\n- Title: {{incident.title}}\n- Severity: {{incident.severity}}\n- Status: {{incident.status}}\n- Declared at: {{incident.created}}\n\n**Affected Services:**\n{{#each incident.services}}\n- {{name}}\n{{/each}}\n\n**Commander:** {{incident.commander}}\n\n**Next Steps:**\n1. Join the incident Slack channel: #incident-{{incident.id}}\n2. Review the incident details in Datadog\n3. Await further instructions from the incident commander\n\nFor more information: {{incident.url}}\n\",\n        Category = \"alert\",\n        IncidentType = security.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Reference incident type\n\t\tsecurity, err := datadog.NewIncidentType(ctx, \"security\", \u0026datadog.IncidentTypeArgs{\n\t\t\tName:        pulumi.String(\"Security Incident\"),\n\t\t\tDescription: pulumi.String(\"Security-related incidents requiring immediate attention\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a notification template for incident alerts\n\t\t_, err = datadog.NewIncidentNotificationTemplate(ctx, \"security_incident\", \u0026datadog.IncidentNotificationTemplateArgs{\n\t\t\tName:    pulumi.String(\"Security Incident Template\"),\n\t\t\tSubject: pulumi.String(\"SEV-1 Security Incident: {{incident.title}}\"),\n\t\t\tContent: pulumi.String(`🚨 SECURITY INCIDENT DECLARED 🚨\n\n**Incident Details:**\n- Title: {{incident.title}}\n- Severity: {{incident.severity}}\n- Status: {{incident.status}}\n- Declared at: {{incident.created}}\n\n**Affected Services:**\n{{#each incident.services}}\n- {{name}}\n{{/each}}\n\n**Commander:** {{incident.commander}}\n\n**Next Steps:**\n1. Join the incident Slack channel: #incident-{{incident.id}}\n2. Review the incident details in Datadog\n3. Await further instructions from the incident commander\n\nFor more information: {{incident.url}}\n`),\n\t\t\tCategory:     pulumi.String(\"alert\"),\n\t\t\tIncidentType: security.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.IncidentType;\nimport com.pulumi.datadog.IncidentTypeArgs;\nimport com.pulumi.datadog.IncidentNotificationTemplate;\nimport com.pulumi.datadog.IncidentNotificationTemplateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Reference incident type\n        var security = new IncidentType(\"security\", IncidentTypeArgs.builder()\n            .name(\"Security Incident\")\n            .description(\"Security-related incidents requiring immediate attention\")\n            .build());\n\n        // Create a notification template for incident alerts\n        var securityIncident = new IncidentNotificationTemplate(\"securityIncident\", IncidentNotificationTemplateArgs.builder()\n            .name(\"Security Incident Template\")\n            .subject(\"SEV-1 Security Incident: {{incident.title}}\")\n            .content(\"\"\"\n🚨 SECURITY INCIDENT DECLARED 🚨\n\n**Incident Details:**\n- Title: {{incident.title}}\n- Severity: {{incident.severity}}\n- Status: {{incident.status}}\n- Declared at: {{incident.created}}\n\n**Affected Services:**\n{{#each incident.services}}\n- {{name}}\n{{/each}}\n\n**Commander:** {{incident.commander}}\n\n**Next Steps:**\n1. Join the incident Slack channel: #incident-{{incident.id}}\n2. Review the incident details in Datadog\n3. Await further instructions from the incident commander\n\nFor more information: {{incident.url}}\n            \"\"\")\n            .category(\"alert\")\n            .incidentType(security.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a notification template for incident alerts\n  securityIncident:\n    type: datadog:IncidentNotificationTemplate\n    name: security_incident\n    properties:\n      name: Security Incident Template\n      subject: 'SEV-1 Security Incident: {{incident.title}}'\n      content: \"\\U0001F6A8 SECURITY INCIDENT DECLARED \\U0001F6A8\\n\\n**Incident Details:**\\n- Title: {{incident.title}}\\n- Severity: {{incident.severity}}\\n- Status: {{incident.status}}\\n- Declared at: {{incident.created}}\\n\\n**Affected Services:**\\n{{#each incident.services}}\\n- {{name}}\\n{{/each}}\\n\\n**Commander:** {{incident.commander}}\\n\\n**Next Steps:**\\n1. Join the incident Slack channel: #incident-{{incident.id}}\\n2. Review the incident details in Datadog\\n3. Await further instructions from the incident commander\\n\\nFor more information: {{incident.url}}\\n\"\n      category: alert\n      incidentType: ${security.id}\n  # Reference incident type\n  security:\n    type: datadog:IncidentType\n    properties:\n      name: Security Incident\n      description: Security-related incidents requiring immediate attention\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n!/bin/bash\n\nImport an existing incident notification template\n\n```sh\n$ pulumi import datadog:index/incidentNotificationTemplate:IncidentNotificationTemplate security_incident 11111111-2222-3333-4444-555555555555\n```\n\n",
            "properties": {
                "category": {
                    "type": "string",
                    "description": "The category of the notification template. Valid values are \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incident`\" pulumi-lang-dotnet=\"`Incident`\" pulumi-lang-go=\"`incident`\" pulumi-lang-python=\"`incident`\" pulumi-lang-yaml=\"`incident`\" pulumi-lang-java=\"`incident`\"\u003e`incident`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`recovery`\" pulumi-lang-dotnet=\"`Recovery`\" pulumi-lang-go=\"`recovery`\" pulumi-lang-python=\"`recovery`\" pulumi-lang-yaml=\"`recovery`\" pulumi-lang-java=\"`recovery`\"\u003e`recovery`\u003c/span\u003e.\n"
                },
                "content": {
                    "type": "string",
                    "description": "The content body of the notification template.\n"
                },
                "created": {
                    "type": "string",
                    "description": "Timestamp when the notification template was created.\n"
                },
                "incidentType": {
                    "type": "string",
                    "description": "The ID of the incident type this notification template is associated with.\n"
                },
                "modified": {
                    "type": "string",
                    "description": "Timestamp when the notification template was last modified.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the notification template.\n"
                },
                "subject": {
                    "type": "string",
                    "description": "The subject line of the notification template.\n"
                }
            },
            "required": [
                "category",
                "content",
                "created",
                "incidentType",
                "modified",
                "name",
                "subject"
            ],
            "inputProperties": {
                "category": {
                    "type": "string",
                    "description": "The category of the notification template. Valid values are \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incident`\" pulumi-lang-dotnet=\"`Incident`\" pulumi-lang-go=\"`incident`\" pulumi-lang-python=\"`incident`\" pulumi-lang-yaml=\"`incident`\" pulumi-lang-java=\"`incident`\"\u003e`incident`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`recovery`\" pulumi-lang-dotnet=\"`Recovery`\" pulumi-lang-go=\"`recovery`\" pulumi-lang-python=\"`recovery`\" pulumi-lang-yaml=\"`recovery`\" pulumi-lang-java=\"`recovery`\"\u003e`recovery`\u003c/span\u003e.\n"
                },
                "content": {
                    "type": "string",
                    "description": "The content body of the notification template.\n"
                },
                "incidentType": {
                    "type": "string",
                    "description": "The ID of the incident type this notification template is associated with.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the notification template.\n"
                },
                "subject": {
                    "type": "string",
                    "description": "The subject line of the notification template.\n"
                }
            },
            "requiredInputs": [
                "category",
                "content",
                "incidentType",
                "name",
                "subject"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IncidentNotificationTemplate resources.\n",
                "properties": {
                    "category": {
                        "type": "string",
                        "description": "The category of the notification template. Valid values are \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`incident`\" pulumi-lang-dotnet=\"`Incident`\" pulumi-lang-go=\"`incident`\" pulumi-lang-python=\"`incident`\" pulumi-lang-yaml=\"`incident`\" pulumi-lang-java=\"`incident`\"\u003e`incident`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`recovery`\" pulumi-lang-dotnet=\"`Recovery`\" pulumi-lang-go=\"`recovery`\" pulumi-lang-python=\"`recovery`\" pulumi-lang-yaml=\"`recovery`\" pulumi-lang-java=\"`recovery`\"\u003e`recovery`\u003c/span\u003e.\n"
                    },
                    "content": {
                        "type": "string",
                        "description": "The content body of the notification template.\n"
                    },
                    "created": {
                        "type": "string",
                        "description": "Timestamp when the notification template was created.\n"
                    },
                    "incidentType": {
                        "type": "string",
                        "description": "The ID of the incident type this notification template is associated with.\n"
                    },
                    "modified": {
                        "type": "string",
                        "description": "Timestamp when the notification template was last modified.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the notification template.\n"
                    },
                    "subject": {
                        "type": "string",
                        "description": "The subject line of the notification template.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/incidentType:IncidentType": {
            "description": "Provides a Datadog incident type resource. This can be used to create and manage Datadog incident types.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Basic incident type\nconst example = new datadog.IncidentType(\"example\", {\n    name: \"Security Incident\",\n    description: \"Security-related incidents requiring immediate attention\",\n    isDefault: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Basic incident type\nexample = datadog.IncidentType(\"example\",\n    name=\"Security Incident\",\n    description=\"Security-related incidents requiring immediate attention\",\n    is_default=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Basic incident type\n    var example = new Datadog.IncidentType(\"example\", new()\n    {\n        Name = \"Security Incident\",\n        Description = \"Security-related incidents requiring immediate attention\",\n        IsDefault = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Basic incident type\n\t\t_, err := datadog.NewIncidentType(ctx, \"example\", \u0026datadog.IncidentTypeArgs{\n\t\t\tName:        pulumi.String(\"Security Incident\"),\n\t\t\tDescription: pulumi.String(\"Security-related incidents requiring immediate attention\"),\n\t\t\tIsDefault:   pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.IncidentType;\nimport com.pulumi.datadog.IncidentTypeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Basic incident type\n        var example = new IncidentType(\"example\", IncidentTypeArgs.builder()\n            .name(\"Security Incident\")\n            .description(\"Security-related incidents requiring immediate attention\")\n            .isDefault(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Basic incident type\n  example:\n    type: datadog:IncidentType\n    properties:\n      name: Security Incident\n      description: Security-related incidents requiring immediate attention\n      isDefault: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/incidentType:IncidentType example \"12345678-1234-1234-1234-1234567890ab\"\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description of the incident type. The description can have a maximum of 512 characters.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "Whether this incident type is the default type.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the incident type. Must be between 1 and 50 characters.\n"
                }
            },
            "required": [
                "isDefault",
                "name"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "Description of the incident type. The description can have a maximum of 512 characters.\n"
                },
                "isDefault": {
                    "type": "boolean",
                    "description": "Whether this incident type is the default type.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the incident type. Must be between 1 and 50 characters.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IncidentType resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "Description of the incident type. The description can have a maximum of 512 characters.\n"
                    },
                    "isDefault": {
                        "type": "boolean",
                        "description": "Whether this incident type is the default type.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the incident type. Must be between 1 and 50 characters.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/ipAllowlist:IpAllowlist": {
            "description": "Provides the Datadog IP allowlist resource. This can be used to manage the Datadog IP allowlist\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst example = new datadog.IpAllowlist(\"example\", {\n    enabled: false,\n    entries: [\n        {\n            cidrBlock: \"127.0.0.0/32\",\n            note: \"1st Example IP Range\",\n        },\n        {\n            cidrBlock: \"192.0.2.0/24\",\n            note: \"2nd Example IP Range\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nexample = datadog.IpAllowlist(\"example\",\n    enabled=False,\n    entries=[\n        {\n            \"cidr_block\": \"127.0.0.0/32\",\n            \"note\": \"1st Example IP Range\",\n        },\n        {\n            \"cidr_block\": \"192.0.2.0/24\",\n            \"note\": \"2nd Example IP Range\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = new Datadog.IpAllowlist(\"example\", new()\n    {\n        Enabled = false,\n        Entries = new[]\n        {\n            new Datadog.Inputs.IpAllowlistEntryArgs\n            {\n                CidrBlock = \"127.0.0.0/32\",\n                Note = \"1st Example IP Range\",\n            },\n            new Datadog.Inputs.IpAllowlistEntryArgs\n            {\n                CidrBlock = \"192.0.2.0/24\",\n                Note = \"2nd Example IP Range\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewIpAllowlist(ctx, \"example\", \u0026datadog.IpAllowlistArgs{\n\t\t\tEnabled: pulumi.Bool(false),\n\t\t\tEntries: datadog.IpAllowlistEntryArray{\n\t\t\t\t\u0026datadog.IpAllowlistEntryArgs{\n\t\t\t\t\tCidrBlock: pulumi.String(\"127.0.0.0/32\"),\n\t\t\t\t\tNote:      pulumi.String(\"1st Example IP Range\"),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.IpAllowlistEntryArgs{\n\t\t\t\t\tCidrBlock: pulumi.String(\"192.0.2.0/24\"),\n\t\t\t\t\tNote:      pulumi.String(\"2nd Example IP Range\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.IpAllowlist;\nimport com.pulumi.datadog.IpAllowlistArgs;\nimport com.pulumi.datadog.inputs.IpAllowlistEntryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new IpAllowlist(\"example\", IpAllowlistArgs.builder()\n            .enabled(false)\n            .entries(            \n                IpAllowlistEntryArgs.builder()\n                    .cidrBlock(\"127.0.0.0/32\")\n                    .note(\"1st Example IP Range\")\n                    .build(),\n                IpAllowlistEntryArgs.builder()\n                    .cidrBlock(\"192.0.2.0/24\")\n                    .note(\"2nd Example IP Range\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: datadog:IpAllowlist\n    properties:\n      enabled: false\n      entries:\n        - cidrBlock: 127.0.0.0/32\n          note: 1st Example IP Range\n        - cidrBlock: 192.0.2.0/24\n          note: 2nd Example IP Range\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the IP Allowlist is enabled.\n"
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/IpAllowlistEntry:IpAllowlistEntry"
                    },
                    "description": "Set of objects containing an IP address or range of IP addresses in the allowlist and an accompanying note.\n"
                }
            },
            "required": [
                "enabled"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the IP Allowlist is enabled.\n"
                },
                "entries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/IpAllowlistEntry:IpAllowlistEntry"
                    },
                    "description": "Set of objects containing an IP address or range of IP addresses in the allowlist and an accompanying note.\n"
                }
            },
            "requiredInputs": [
                "enabled"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering IpAllowlist resources.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the IP Allowlist is enabled.\n"
                    },
                    "entries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/IpAllowlistEntry:IpAllowlistEntry"
                        },
                        "description": "Set of objects containing an IP address or range of IP addresses in the allowlist and an accompanying note.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsArchive:LogsArchive": {
            "description": "Provides a Datadog Logs Archive API resource, which is used to create and manage Datadog logs archives.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst myS3Archive = new datadog.LogsArchive(\"my_s3_archive\", {\n    name: \"my s3 archive\",\n    query: \"service:myservice\",\n    s3Archive: {\n        bucket: \"my-bucket\",\n        path: \"/path/foo\",\n        accountId: \"001234567888\",\n        roleName: \"my-role-name\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmy_s3_archive = datadog.LogsArchive(\"my_s3_archive\",\n    name=\"my s3 archive\",\n    query=\"service:myservice\",\n    s3_archive={\n        \"bucket\": \"my-bucket\",\n        \"path\": \"/path/foo\",\n        \"account_id\": \"001234567888\",\n        \"role_name\": \"my-role-name\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myS3Archive = new Datadog.LogsArchive(\"my_s3_archive\", new()\n    {\n        Name = \"my s3 archive\",\n        Query = \"service:myservice\",\n        S3Archive = new Datadog.Inputs.LogsArchiveS3ArchiveArgs\n        {\n            Bucket = \"my-bucket\",\n            Path = \"/path/foo\",\n            AccountId = \"001234567888\",\n            RoleName = \"my-role-name\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewLogsArchive(ctx, \"my_s3_archive\", \u0026datadog.LogsArchiveArgs{\n\t\t\tName:  pulumi.String(\"my s3 archive\"),\n\t\t\tQuery: pulumi.String(\"service:myservice\"),\n\t\t\tS3Archive: \u0026datadog.LogsArchiveS3ArchiveArgs{\n\t\t\t\tBucket:    pulumi.String(\"my-bucket\"),\n\t\t\t\tPath:      pulumi.String(\"/path/foo\"),\n\t\t\t\tAccountId: pulumi.String(\"001234567888\"),\n\t\t\t\tRoleName:  pulumi.String(\"my-role-name\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsArchive;\nimport com.pulumi.datadog.LogsArchiveArgs;\nimport com.pulumi.datadog.inputs.LogsArchiveS3ArchiveArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myS3Archive = new LogsArchive(\"myS3Archive\", LogsArchiveArgs.builder()\n            .name(\"my s3 archive\")\n            .query(\"service:myservice\")\n            .s3Archive(LogsArchiveS3ArchiveArgs.builder()\n                .bucket(\"my-bucket\")\n                .path(\"/path/foo\")\n                .accountId(\"001234567888\")\n                .roleName(\"my-role-name\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myS3Archive:\n    type: datadog:LogsArchive\n    name: my_s3_archive\n    properties:\n      name: my s3 archive\n      query: service:myservice\n      s3Archive:\n        bucket: my-bucket\n        path: /path/foo\n        accountId: '001234567888'\n        roleName: my-role-name\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/logsArchive:LogsArchive my_s3_archive 1Aabc2_dfQPLnXy3HlfK4hi\n```\n\n",
            "properties": {
                "azureArchive": {
                    "$ref": "#/types/datadog:index/LogsArchiveAzureArchive:LogsArchiveAzureArchive",
                    "description": "Definition of an azure archive.\n"
                },
                "gcsArchive": {
                    "$ref": "#/types/datadog:index/LogsArchiveGcsArchive:LogsArchiveGcsArchive",
                    "description": "Definition of a GCS archive.\n"
                },
                "includeTags": {
                    "type": "boolean",
                    "description": "To store the tags in the archive, set the value \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. If it is set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tags will be dropped when the logs are sent to the archive. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Your archive name.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The archive query/filter. Logs matching this query are included in the archive.\n"
                },
                "rehydrationMaxScanSizeInGb": {
                    "type": "integer",
                    "description": "To limit the rehydration scan size for the archive, set a value in GB.\n"
                },
                "rehydrationTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to add to rehydrated logs from an archive.\n"
                },
                "s3Archive": {
                    "$ref": "#/types/datadog:index/LogsArchiveS3Archive:LogsArchiveS3Archive",
                    "description": "Definition of an s3 archive.\n"
                }
            },
            "required": [
                "name",
                "query"
            ],
            "inputProperties": {
                "azureArchive": {
                    "$ref": "#/types/datadog:index/LogsArchiveAzureArchive:LogsArchiveAzureArchive",
                    "description": "Definition of an azure archive.\n"
                },
                "gcsArchive": {
                    "$ref": "#/types/datadog:index/LogsArchiveGcsArchive:LogsArchiveGcsArchive",
                    "description": "Definition of a GCS archive.\n"
                },
                "includeTags": {
                    "type": "boolean",
                    "description": "To store the tags in the archive, set the value \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. If it is set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tags will be dropped when the logs are sent to the archive. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Your archive name.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The archive query/filter. Logs matching this query are included in the archive.\n"
                },
                "rehydrationMaxScanSizeInGb": {
                    "type": "integer",
                    "description": "To limit the rehydration scan size for the archive, set a value in GB.\n"
                },
                "rehydrationTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of tags to add to rehydrated logs from an archive.\n"
                },
                "s3Archive": {
                    "$ref": "#/types/datadog:index/LogsArchiveS3Archive:LogsArchiveS3Archive",
                    "description": "Definition of an s3 archive.\n"
                }
            },
            "requiredInputs": [
                "name",
                "query"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsArchive resources.\n",
                "properties": {
                    "azureArchive": {
                        "$ref": "#/types/datadog:index/LogsArchiveAzureArchive:LogsArchiveAzureArchive",
                        "description": "Definition of an azure archive.\n"
                    },
                    "gcsArchive": {
                        "$ref": "#/types/datadog:index/LogsArchiveGcsArchive:LogsArchiveGcsArchive",
                        "description": "Definition of a GCS archive.\n"
                    },
                    "includeTags": {
                        "type": "boolean",
                        "description": "To store the tags in the archive, set the value \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. If it is set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the tags will be dropped when the logs are sent to the archive. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Your archive name.\n"
                    },
                    "query": {
                        "type": "string",
                        "description": "The archive query/filter. Logs matching this query are included in the archive.\n"
                    },
                    "rehydrationMaxScanSizeInGb": {
                        "type": "integer",
                        "description": "To limit the rehydration scan size for the archive, set a value in GB.\n"
                    },
                    "rehydrationTags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "An array of tags to add to rehydrated logs from an archive.\n"
                    },
                    "s3Archive": {
                        "$ref": "#/types/datadog:index/LogsArchiveS3Archive:LogsArchiveS3Archive",
                        "description": "Definition of an s3 archive.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsArchiveOrder:LogsArchiveOrder": {
            "description": "Provides a Datadog [Logs Archive API](https://docs.datadoghq.com/api/v2/logs-archives/) resource, which is used to manage Datadog log archives order.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst sampleArchiveOrder = new datadog.LogsArchiveOrder(\"sample_archive_order\", {archiveIds: [\n    sampleArchive1.id,\n    sampleArchive2.id,\n]});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nsample_archive_order = datadog.LogsArchiveOrder(\"sample_archive_order\", archive_ids=[\n    sample_archive1[\"id\"],\n    sample_archive2[\"id\"],\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var sampleArchiveOrder = new Datadog.LogsArchiveOrder(\"sample_archive_order\", new()\n    {\n        ArchiveIds = new[]\n        {\n            sampleArchive1.Id,\n            sampleArchive2.Id,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewLogsArchiveOrder(ctx, \"sample_archive_order\", \u0026datadog.LogsArchiveOrderArgs{\n\t\t\tArchiveIds: pulumi.StringArray{\n\t\t\t\tsampleArchive1.Id,\n\t\t\t\tsampleArchive2.Id,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsArchiveOrder;\nimport com.pulumi.datadog.LogsArchiveOrderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var sampleArchiveOrder = new LogsArchiveOrder(\"sampleArchiveOrder\", LogsArchiveOrderArgs.builder()\n            .archiveIds(            \n                sampleArchive1.id(),\n                sampleArchive2.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  sampleArchiveOrder:\n    type: datadog:LogsArchiveOrder\n    name: sample_archive_order\n    properties:\n      archiveIds:\n        - ${sampleArchive1.id}\n        - ${sampleArchive2.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nThere must be at most one\u003cspan pulumi-lang-nodejs=\" datadog.LogsArchiveOrder \" pulumi-lang-dotnet=\" datadog.LogsArchiveOrder \" pulumi-lang-go=\" LogsArchiveOrder \" pulumi-lang-python=\" LogsArchiveOrder \" pulumi-lang-yaml=\" datadog.LogsArchiveOrder \" pulumi-lang-java=\" datadog.LogsArchiveOrder \"\u003e datadog.LogsArchiveOrder \u003c/span\u003eresource. You can import the\u003cspan pulumi-lang-nodejs=\" datadog.LogsArchiveOrder \" pulumi-lang-dotnet=\" datadog.LogsArchiveOrder \" pulumi-lang-go=\" LogsArchiveOrder \" pulumi-lang-python=\" LogsArchiveOrder \" pulumi-lang-yaml=\" datadog.LogsArchiveOrder \" pulumi-lang-java=\" datadog.LogsArchiveOrder \"\u003e datadog.LogsArchiveOrder \u003c/span\u003eor create an archive order.\n\n```sh\n$ pulumi import datadog:index/logsArchiveOrder:LogsArchiveOrder name\u003e archiveOrderID\n```\n\n",
            "properties": {
                "archiveIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The archive IDs list. The order of archive IDs in this attribute defines the overall archive order for logs. If \u003cspan pulumi-lang-nodejs=\"`archiveIds`\" pulumi-lang-dotnet=\"`ArchiveIds`\" pulumi-lang-go=\"`archiveIds`\" pulumi-lang-python=\"`archive_ids`\" pulumi-lang-yaml=\"`archiveIds`\" pulumi-lang-java=\"`archiveIds`\"\u003e`archiveIds`\u003c/span\u003e is empty or not specified, it will import the actual archive order, and create the resource. Otherwise, it will try to update the order.\n"
                }
            },
            "required": [
                "archiveIds"
            ],
            "inputProperties": {
                "archiveIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The archive IDs list. The order of archive IDs in this attribute defines the overall archive order for logs. If \u003cspan pulumi-lang-nodejs=\"`archiveIds`\" pulumi-lang-dotnet=\"`ArchiveIds`\" pulumi-lang-go=\"`archiveIds`\" pulumi-lang-python=\"`archive_ids`\" pulumi-lang-yaml=\"`archiveIds`\" pulumi-lang-java=\"`archiveIds`\"\u003e`archiveIds`\u003c/span\u003e is empty or not specified, it will import the actual archive order, and create the resource. Otherwise, it will try to update the order.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsArchiveOrder resources.\n",
                "properties": {
                    "archiveIds": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The archive IDs list. The order of archive IDs in this attribute defines the overall archive order for logs. If \u003cspan pulumi-lang-nodejs=\"`archiveIds`\" pulumi-lang-dotnet=\"`ArchiveIds`\" pulumi-lang-go=\"`archiveIds`\" pulumi-lang-python=\"`archive_ids`\" pulumi-lang-yaml=\"`archiveIds`\" pulumi-lang-java=\"`archiveIds`\"\u003e`archiveIds`\u003c/span\u003e is empty or not specified, it will import the actual archive order, and create the resource. Otherwise, it will try to update the order.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsCustomDestination:LogsCustomDestination": {
            "description": "Provides a Datadog Logs Custom Destination API resource, which is used to create and manage Datadog log forwarding.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst sampleDestination = new datadog.LogsCustomDestination(\"sample_destination\", {\n    name: \"sample destination\",\n    query: \"service:my-service\",\n    enabled: true,\n    httpDestination: {\n        endpoint: \"https://example.org\",\n        basicAuth: {\n            username: \"my-username\",\n            password: \"my-password\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nsample_destination = datadog.LogsCustomDestination(\"sample_destination\",\n    name=\"sample destination\",\n    query=\"service:my-service\",\n    enabled=True,\n    http_destination={\n        \"endpoint\": \"https://example.org\",\n        \"basic_auth\": {\n            \"username\": \"my-username\",\n            \"password\": \"my-password\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var sampleDestination = new Datadog.LogsCustomDestination(\"sample_destination\", new()\n    {\n        Name = \"sample destination\",\n        Query = \"service:my-service\",\n        Enabled = true,\n        HttpDestination = new Datadog.Inputs.LogsCustomDestinationHttpDestinationArgs\n        {\n            Endpoint = \"https://example.org\",\n            BasicAuth = new Datadog.Inputs.LogsCustomDestinationHttpDestinationBasicAuthArgs\n            {\n                Username = \"my-username\",\n                Password = \"my-password\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewLogsCustomDestination(ctx, \"sample_destination\", \u0026datadog.LogsCustomDestinationArgs{\n\t\t\tName:    pulumi.String(\"sample destination\"),\n\t\t\tQuery:   pulumi.String(\"service:my-service\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tHttpDestination: \u0026datadog.LogsCustomDestinationHttpDestinationArgs{\n\t\t\t\tEndpoint: pulumi.String(\"https://example.org\"),\n\t\t\t\tBasicAuth: \u0026datadog.LogsCustomDestinationHttpDestinationBasicAuthArgs{\n\t\t\t\t\tUsername: pulumi.String(\"my-username\"),\n\t\t\t\t\tPassword: pulumi.String(\"my-password\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsCustomDestination;\nimport com.pulumi.datadog.LogsCustomDestinationArgs;\nimport com.pulumi.datadog.inputs.LogsCustomDestinationHttpDestinationArgs;\nimport com.pulumi.datadog.inputs.LogsCustomDestinationHttpDestinationBasicAuthArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var sampleDestination = new LogsCustomDestination(\"sampleDestination\", LogsCustomDestinationArgs.builder()\n            .name(\"sample destination\")\n            .query(\"service:my-service\")\n            .enabled(true)\n            .httpDestination(LogsCustomDestinationHttpDestinationArgs.builder()\n                .endpoint(\"https://example.org\")\n                .basicAuth(LogsCustomDestinationHttpDestinationBasicAuthArgs.builder()\n                    .username(\"my-username\")\n                    .password(\"my-password\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  sampleDestination:\n    type: datadog:LogsCustomDestination\n    name: sample_destination\n    properties:\n      name: sample destination\n      query: service:my-service\n      enabled: true\n      httpDestination:\n        endpoint: https://example.org\n        basicAuth:\n          username: my-username\n          password: my-password\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nCustom destinations can be imported using the destination ID. Caution: auth credentials can not be imported.\n\n```sh\n$ pulumi import datadog:index/logsCustomDestination:LogsCustomDestination sample_destination \"destination-id\"\n```\n\n",
            "properties": {
                "elasticsearchDestination": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationElasticsearchDestination:LogsCustomDestinationElasticsearchDestination",
                    "description": "The Elasticsearch destination.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether logs matching this custom destination should be forwarded or not.\n"
                },
                "forwardTags": {
                    "type": "boolean",
                    "description": "Whether tags from the forwarded logs should be forwarded or not.\n"
                },
                "forwardTagsRestrictionListType": {
                    "type": "string",
                    "description": "How the \u003cspan pulumi-lang-nodejs=\"`forwardTagsRestrictionList`\" pulumi-lang-dotnet=\"`ForwardTagsRestrictionList`\" pulumi-lang-go=\"`forwardTagsRestrictionList`\" pulumi-lang-python=\"`forward_tags_restriction_list`\" pulumi-lang-yaml=\"`forwardTagsRestrictionList`\" pulumi-lang-java=\"`forwardTagsRestrictionList`\"\u003e`forwardTagsRestrictionList`\u003c/span\u003e parameter should be interpreted.\n\t\t\tIf `ALLOW_LIST`, then only tags whose keys on the forwarded logs match the ones on the restriction list\n\t\t\tare forwarded.\n\t\t\t`BLOCK_LIST` works the opposite way. It does not forward the tags matching the ones on the list. Valid values are `ALLOW_LIST`, `BLOCK_LIST`.\n"
                },
                "forwardTagsRestrictionLists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of [tag keys](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be filtered.\n\t\t\tAn empty list represents no restriction is in place and either all or no tags will be\n\t\t\tforwarded depending on \u003cspan pulumi-lang-nodejs=\"`forwardTagsRestrictionListType`\" pulumi-lang-dotnet=\"`ForwardTagsRestrictionListType`\" pulumi-lang-go=\"`forwardTagsRestrictionListType`\" pulumi-lang-python=\"`forward_tags_restriction_list_type`\" pulumi-lang-yaml=\"`forwardTagsRestrictionListType`\" pulumi-lang-java=\"`forwardTagsRestrictionListType`\"\u003e`forwardTagsRestrictionListType`\u003c/span\u003e parameter.\n"
                },
                "httpDestination": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationHttpDestination:LogsCustomDestinationHttpDestination",
                    "description": "The HTTP destination.\n"
                },
                "microsoftSentinelDestination": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationMicrosoftSentinelDestination:LogsCustomDestinationMicrosoftSentinelDestination",
                    "description": "The Microsoft Sentinel destination.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The custom destination name.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The custom destination query filter. Logs matching this query are forwarded to the destination.\n"
                },
                "splunkDestination": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationSplunkDestination:LogsCustomDestinationSplunkDestination",
                    "description": "The Splunk HTTP Event Collector (HEC) destination.\n"
                }
            },
            "required": [
                "enabled",
                "forwardTags",
                "forwardTagsRestrictionLists",
                "forwardTagsRestrictionListType",
                "name",
                "query"
            ],
            "inputProperties": {
                "elasticsearchDestination": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationElasticsearchDestination:LogsCustomDestinationElasticsearchDestination",
                    "description": "The Elasticsearch destination.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether logs matching this custom destination should be forwarded or not.\n"
                },
                "forwardTags": {
                    "type": "boolean",
                    "description": "Whether tags from the forwarded logs should be forwarded or not.\n"
                },
                "forwardTagsRestrictionListType": {
                    "type": "string",
                    "description": "How the \u003cspan pulumi-lang-nodejs=\"`forwardTagsRestrictionList`\" pulumi-lang-dotnet=\"`ForwardTagsRestrictionList`\" pulumi-lang-go=\"`forwardTagsRestrictionList`\" pulumi-lang-python=\"`forward_tags_restriction_list`\" pulumi-lang-yaml=\"`forwardTagsRestrictionList`\" pulumi-lang-java=\"`forwardTagsRestrictionList`\"\u003e`forwardTagsRestrictionList`\u003c/span\u003e parameter should be interpreted.\n\t\t\tIf `ALLOW_LIST`, then only tags whose keys on the forwarded logs match the ones on the restriction list\n\t\t\tare forwarded.\n\t\t\t`BLOCK_LIST` works the opposite way. It does not forward the tags matching the ones on the list. Valid values are `ALLOW_LIST`, `BLOCK_LIST`.\n"
                },
                "forwardTagsRestrictionLists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of [tag keys](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be filtered.\n\t\t\tAn empty list represents no restriction is in place and either all or no tags will be\n\t\t\tforwarded depending on \u003cspan pulumi-lang-nodejs=\"`forwardTagsRestrictionListType`\" pulumi-lang-dotnet=\"`ForwardTagsRestrictionListType`\" pulumi-lang-go=\"`forwardTagsRestrictionListType`\" pulumi-lang-python=\"`forward_tags_restriction_list_type`\" pulumi-lang-yaml=\"`forwardTagsRestrictionListType`\" pulumi-lang-java=\"`forwardTagsRestrictionListType`\"\u003e`forwardTagsRestrictionListType`\u003c/span\u003e parameter.\n"
                },
                "httpDestination": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationHttpDestination:LogsCustomDestinationHttpDestination",
                    "description": "The HTTP destination.\n"
                },
                "microsoftSentinelDestination": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationMicrosoftSentinelDestination:LogsCustomDestinationMicrosoftSentinelDestination",
                    "description": "The Microsoft Sentinel destination.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The custom destination name.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The custom destination query filter. Logs matching this query are forwarded to the destination.\n"
                },
                "splunkDestination": {
                    "$ref": "#/types/datadog:index/LogsCustomDestinationSplunkDestination:LogsCustomDestinationSplunkDestination",
                    "description": "The Splunk HTTP Event Collector (HEC) destination.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsCustomDestination resources.\n",
                "properties": {
                    "elasticsearchDestination": {
                        "$ref": "#/types/datadog:index/LogsCustomDestinationElasticsearchDestination:LogsCustomDestinationElasticsearchDestination",
                        "description": "The Elasticsearch destination.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether logs matching this custom destination should be forwarded or not.\n"
                    },
                    "forwardTags": {
                        "type": "boolean",
                        "description": "Whether tags from the forwarded logs should be forwarded or not.\n"
                    },
                    "forwardTagsRestrictionListType": {
                        "type": "string",
                        "description": "How the \u003cspan pulumi-lang-nodejs=\"`forwardTagsRestrictionList`\" pulumi-lang-dotnet=\"`ForwardTagsRestrictionList`\" pulumi-lang-go=\"`forwardTagsRestrictionList`\" pulumi-lang-python=\"`forward_tags_restriction_list`\" pulumi-lang-yaml=\"`forwardTagsRestrictionList`\" pulumi-lang-java=\"`forwardTagsRestrictionList`\"\u003e`forwardTagsRestrictionList`\u003c/span\u003e parameter should be interpreted.\n\t\t\tIf `ALLOW_LIST`, then only tags whose keys on the forwarded logs match the ones on the restriction list\n\t\t\tare forwarded.\n\t\t\t`BLOCK_LIST` works the opposite way. It does not forward the tags matching the ones on the list. Valid values are `ALLOW_LIST`, `BLOCK_LIST`.\n"
                    },
                    "forwardTagsRestrictionLists": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of [tag keys](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be filtered.\n\t\t\tAn empty list represents no restriction is in place and either all or no tags will be\n\t\t\tforwarded depending on \u003cspan pulumi-lang-nodejs=\"`forwardTagsRestrictionListType`\" pulumi-lang-dotnet=\"`ForwardTagsRestrictionListType`\" pulumi-lang-go=\"`forwardTagsRestrictionListType`\" pulumi-lang-python=\"`forward_tags_restriction_list_type`\" pulumi-lang-yaml=\"`forwardTagsRestrictionListType`\" pulumi-lang-java=\"`forwardTagsRestrictionListType`\"\u003e`forwardTagsRestrictionListType`\u003c/span\u003e parameter.\n"
                    },
                    "httpDestination": {
                        "$ref": "#/types/datadog:index/LogsCustomDestinationHttpDestination:LogsCustomDestinationHttpDestination",
                        "description": "The HTTP destination.\n"
                    },
                    "microsoftSentinelDestination": {
                        "$ref": "#/types/datadog:index/LogsCustomDestinationMicrosoftSentinelDestination:LogsCustomDestinationMicrosoftSentinelDestination",
                        "description": "The Microsoft Sentinel destination.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The custom destination name.\n"
                    },
                    "query": {
                        "type": "string",
                        "description": "The custom destination query filter. Logs matching this query are forwarded to the destination.\n"
                    },
                    "splunkDestination": {
                        "$ref": "#/types/datadog:index/LogsCustomDestinationSplunkDestination:LogsCustomDestinationSplunkDestination",
                        "description": "The Splunk HTTP Event Collector (HEC) destination.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsCustomPipeline:LogsCustomPipeline": {
            "description": "Provides a Datadog [Logs Pipeline API](https://docs.datadoghq.com/api/v1/logs-pipelines/) resource, which is used to create and manage Datadog logs custom pipelines. Each \u003cspan pulumi-lang-nodejs=\"`datadog.LogsCustomPipeline`\" pulumi-lang-dotnet=\"`datadog.LogsCustomPipeline`\" pulumi-lang-go=\"`LogsCustomPipeline`\" pulumi-lang-python=\"`LogsCustomPipeline`\" pulumi-lang-yaml=\"`datadog.LogsCustomPipeline`\" pulumi-lang-java=\"`datadog.LogsCustomPipeline`\"\u003e`datadog.LogsCustomPipeline`\u003c/span\u003e resource defines a complete pipeline. The order of the pipelines is maintained in a different resource: \u003cspan pulumi-lang-nodejs=\"`datadog.LogsPipelineOrder`\" pulumi-lang-dotnet=\"`datadog.LogsPipelineOrder`\" pulumi-lang-go=\"`LogsPipelineOrder`\" pulumi-lang-python=\"`LogsPipelineOrder`\" pulumi-lang-yaml=\"`datadog.LogsPipelineOrder`\" pulumi-lang-java=\"`datadog.LogsPipelineOrder`\"\u003e`datadog.LogsPipelineOrder`\u003c/span\u003e. When creating a new pipeline, you need to **explicitly** add this pipeline to the \u003cspan pulumi-lang-nodejs=\"`datadog.LogsPipelineOrder`\" pulumi-lang-dotnet=\"`datadog.LogsPipelineOrder`\" pulumi-lang-go=\"`LogsPipelineOrder`\" pulumi-lang-python=\"`LogsPipelineOrder`\" pulumi-lang-yaml=\"`datadog.LogsPipelineOrder`\" pulumi-lang-java=\"`datadog.LogsPipelineOrder`\"\u003e`datadog.LogsPipelineOrder`\u003c/span\u003e resource to track the pipeline. Similarly, when a pipeline needs to be destroyed, remove its references from the \u003cspan pulumi-lang-nodejs=\"`datadog.LogsPipelineOrder`\" pulumi-lang-dotnet=\"`datadog.LogsPipelineOrder`\" pulumi-lang-go=\"`LogsPipelineOrder`\" pulumi-lang-python=\"`LogsPipelineOrder`\" pulumi-lang-yaml=\"`datadog.LogsPipelineOrder`\" pulumi-lang-java=\"`datadog.LogsPipelineOrder`\"\u003e`datadog.LogsPipelineOrder`\u003c/span\u003e resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst samplePipeline = new datadog.LogsCustomPipeline(\"sample_pipeline\", {\n    filters: [{\n        query: \"source:foo\",\n    }],\n    name: \"sample pipeline\",\n    isEnabled: true,\n    processors: [\n        {\n            arithmeticProcessor: {\n                expression: \"(time1 - time2)*1000\",\n                target: \"my_arithmetic\",\n                isReplaceMissing: true,\n                name: \"sample arithmetic processor\",\n                isEnabled: true,\n            },\n        },\n        {\n            attributeRemapper: {\n                sources: [\"db.instance\"],\n                sourceType: \"tag\",\n                target: \"db\",\n                targetType: \"attribute\",\n                targetFormat: \"string\",\n                preserveSource: true,\n                overrideOnConflict: false,\n                name: \"sample attribute processor\",\n                isEnabled: true,\n            },\n        },\n        {\n            categoryProcessor: {\n                target: \"foo.severity\",\n                categories: [\n                    {\n                        name: \"debug\",\n                        filter: {\n                            query: \"@severity: \\\".\\\"\",\n                        },\n                    },\n                    {\n                        name: \"verbose\",\n                        filter: {\n                            query: \"@severity: \\\"-\\\"\",\n                        },\n                    },\n                ],\n                name: \"sample category processor\",\n                isEnabled: true,\n            },\n        },\n        {\n            dateRemapper: {\n                sources: [\n                    \"_timestamp\",\n                    \"published_date\",\n                ],\n                name: \"sample date remapper\",\n                isEnabled: true,\n            },\n        },\n        {\n            geoIpParser: {\n                sources: [\"network.client.ip\"],\n                target: \"network.client.geoip\",\n                name: \"sample geo ip parser\",\n                isEnabled: true,\n            },\n        },\n        {\n            grokParser: {\n                samples: [\"sample log 1\"],\n                source: \"message\",\n                grok: {\n                    supportRules: \"\",\n                    matchRules: \"Rule %{word:my_word2} %{number:my_float2}\",\n                },\n                name: \"sample grok parser\",\n                isEnabled: true,\n            },\n        },\n        {\n            lookupProcessor: {\n                source: \"service_id\",\n                target: \"service_name\",\n                lookupTables: [\"1,my service\"],\n                defaultLookup: \"unknown service\",\n                name: \"sample lookup processor\",\n                isEnabled: true,\n            },\n        },\n        {\n            messageRemapper: {\n                sources: [\"msg\"],\n                name: \"sample message remapper\",\n                isEnabled: true,\n            },\n        },\n        {\n            pipeline: {\n                filters: [{\n                    query: \"source:foo\",\n                }],\n                processors: [{\n                    urlParser: {\n                        name: \"sample url parser\",\n                        sources: [\n                            \"url\",\n                            \"extra\",\n                        ],\n                        target: \"http_url\",\n                        normalizeEndingSlashes: true,\n                    },\n                }],\n                name: \"nested pipeline\",\n                isEnabled: true,\n            },\n        },\n        {\n            serviceRemapper: {\n                sources: [\"service\"],\n                name: \"sample service remapper\",\n                isEnabled: true,\n            },\n        },\n        {\n            statusRemapper: {\n                sources: [\n                    \"info\",\n                    \"trace\",\n                ],\n                name: \"sample status remapper\",\n                isEnabled: true,\n            },\n        },\n        {\n            stringBuilderProcessor: {\n                target: \"user_activity\",\n                template: \"%{user.name} logged in at %{timestamp}\",\n                name: \"sample string builder processor\",\n                isEnabled: true,\n                isReplaceMissing: false,\n            },\n        },\n        {\n            traceIdRemapper: {\n                sources: [\"dd.trace_id\"],\n                name: \"sample trace id remapper\",\n                isEnabled: true,\n            },\n        },\n        {\n            userAgentParser: {\n                sources: [\n                    \"user\",\n                    \"agent\",\n                ],\n                target: \"http_agent\",\n                isEncoded: false,\n                name: \"sample user agent parser\",\n                isEnabled: true,\n            },\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nsample_pipeline = datadog.LogsCustomPipeline(\"sample_pipeline\",\n    filters=[{\n        \"query\": \"source:foo\",\n    }],\n    name=\"sample pipeline\",\n    is_enabled=True,\n    processors=[\n        {\n            \"arithmetic_processor\": {\n                \"expression\": \"(time1 - time2)*1000\",\n                \"target\": \"my_arithmetic\",\n                \"is_replace_missing\": True,\n                \"name\": \"sample arithmetic processor\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"attribute_remapper\": {\n                \"sources\": [\"db.instance\"],\n                \"source_type\": \"tag\",\n                \"target\": \"db\",\n                \"target_type\": \"attribute\",\n                \"target_format\": \"string\",\n                \"preserve_source\": True,\n                \"override_on_conflict\": False,\n                \"name\": \"sample attribute processor\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"category_processor\": {\n                \"target\": \"foo.severity\",\n                \"categories\": [\n                    {\n                        \"name\": \"debug\",\n                        \"filter\": {\n                            \"query\": \"@severity: \\\".\\\"\",\n                        },\n                    },\n                    {\n                        \"name\": \"verbose\",\n                        \"filter\": {\n                            \"query\": \"@severity: \\\"-\\\"\",\n                        },\n                    },\n                ],\n                \"name\": \"sample category processor\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"date_remapper\": {\n                \"sources\": [\n                    \"_timestamp\",\n                    \"published_date\",\n                ],\n                \"name\": \"sample date remapper\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"geo_ip_parser\": {\n                \"sources\": [\"network.client.ip\"],\n                \"target\": \"network.client.geoip\",\n                \"name\": \"sample geo ip parser\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"grok_parser\": {\n                \"samples\": [\"sample log 1\"],\n                \"source\": \"message\",\n                \"grok\": {\n                    \"support_rules\": \"\",\n                    \"match_rules\": \"Rule %{word:my_word2} %{number:my_float2}\",\n                },\n                \"name\": \"sample grok parser\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"lookup_processor\": {\n                \"source\": \"service_id\",\n                \"target\": \"service_name\",\n                \"lookup_tables\": [\"1,my service\"],\n                \"default_lookup\": \"unknown service\",\n                \"name\": \"sample lookup processor\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"message_remapper\": {\n                \"sources\": [\"msg\"],\n                \"name\": \"sample message remapper\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"pipeline\": {\n                \"filters\": [{\n                    \"query\": \"source:foo\",\n                }],\n                \"processors\": [{\n                    \"url_parser\": {\n                        \"name\": \"sample url parser\",\n                        \"sources\": [\n                            \"url\",\n                            \"extra\",\n                        ],\n                        \"target\": \"http_url\",\n                        \"normalize_ending_slashes\": True,\n                    },\n                }],\n                \"name\": \"nested pipeline\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"service_remapper\": {\n                \"sources\": [\"service\"],\n                \"name\": \"sample service remapper\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"status_remapper\": {\n                \"sources\": [\n                    \"info\",\n                    \"trace\",\n                ],\n                \"name\": \"sample status remapper\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"string_builder_processor\": {\n                \"target\": \"user_activity\",\n                \"template\": \"%{user.name} logged in at %{timestamp}\",\n                \"name\": \"sample string builder processor\",\n                \"is_enabled\": True,\n                \"is_replace_missing\": False,\n            },\n        },\n        {\n            \"trace_id_remapper\": {\n                \"sources\": [\"dd.trace_id\"],\n                \"name\": \"sample trace id remapper\",\n                \"is_enabled\": True,\n            },\n        },\n        {\n            \"user_agent_parser\": {\n                \"sources\": [\n                    \"user\",\n                    \"agent\",\n                ],\n                \"target\": \"http_agent\",\n                \"is_encoded\": False,\n                \"name\": \"sample user agent parser\",\n                \"is_enabled\": True,\n            },\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var samplePipeline = new Datadog.LogsCustomPipeline(\"sample_pipeline\", new()\n    {\n        Filters = new[]\n        {\n            new Datadog.Inputs.LogsCustomPipelineFilterArgs\n            {\n                Query = \"source:foo\",\n            },\n        },\n        Name = \"sample pipeline\",\n        IsEnabled = true,\n        Processors = new[]\n        {\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                ArithmeticProcessor = new Datadog.Inputs.LogsCustomPipelineProcessorArithmeticProcessorArgs\n                {\n                    Expression = \"(time1 - time2)*1000\",\n                    Target = \"my_arithmetic\",\n                    IsReplaceMissing = true,\n                    Name = \"sample arithmetic processor\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                AttributeRemapper = new Datadog.Inputs.LogsCustomPipelineProcessorAttributeRemapperArgs\n                {\n                    Sources = new[]\n                    {\n                        \"db.instance\",\n                    },\n                    SourceType = \"tag\",\n                    Target = \"db\",\n                    TargetType = \"attribute\",\n                    TargetFormat = \"string\",\n                    PreserveSource = true,\n                    OverrideOnConflict = false,\n                    Name = \"sample attribute processor\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                CategoryProcessor = new Datadog.Inputs.LogsCustomPipelineProcessorCategoryProcessorArgs\n                {\n                    Target = \"foo.severity\",\n                    Categories = new[]\n                    {\n                        new Datadog.Inputs.LogsCustomPipelineProcessorCategoryProcessorCategoryArgs\n                        {\n                            Name = \"debug\",\n                            Filter = new Datadog.Inputs.LogsCustomPipelineProcessorCategoryProcessorCategoryFilterArgs\n                            {\n                                Query = \"@severity: \\\".\\\"\",\n                            },\n                        },\n                        new Datadog.Inputs.LogsCustomPipelineProcessorCategoryProcessorCategoryArgs\n                        {\n                            Name = \"verbose\",\n                            Filter = new Datadog.Inputs.LogsCustomPipelineProcessorCategoryProcessorCategoryFilterArgs\n                            {\n                                Query = \"@severity: \\\"-\\\"\",\n                            },\n                        },\n                    },\n                    Name = \"sample category processor\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                DateRemapper = new Datadog.Inputs.LogsCustomPipelineProcessorDateRemapperArgs\n                {\n                    Sources = new[]\n                    {\n                        \"_timestamp\",\n                        \"published_date\",\n                    },\n                    Name = \"sample date remapper\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                GeoIpParser = new Datadog.Inputs.LogsCustomPipelineProcessorGeoIpParserArgs\n                {\n                    Sources = new[]\n                    {\n                        \"network.client.ip\",\n                    },\n                    Target = \"network.client.geoip\",\n                    Name = \"sample geo ip parser\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                GrokParser = new Datadog.Inputs.LogsCustomPipelineProcessorGrokParserArgs\n                {\n                    Samples = new[]\n                    {\n                        \"sample log 1\",\n                    },\n                    Source = \"message\",\n                    Grok = new Datadog.Inputs.LogsCustomPipelineProcessorGrokParserGrokArgs\n                    {\n                        SupportRules = \"\",\n                        MatchRules = \"Rule %{word:my_word2} %{number:my_float2}\",\n                    },\n                    Name = \"sample grok parser\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                LookupProcessor = new Datadog.Inputs.LogsCustomPipelineProcessorLookupProcessorArgs\n                {\n                    Source = \"service_id\",\n                    Target = \"service_name\",\n                    LookupTables = new[]\n                    {\n                        \"1,my service\",\n                    },\n                    DefaultLookup = \"unknown service\",\n                    Name = \"sample lookup processor\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                MessageRemapper = new Datadog.Inputs.LogsCustomPipelineProcessorMessageRemapperArgs\n                {\n                    Sources = new[]\n                    {\n                        \"msg\",\n                    },\n                    Name = \"sample message remapper\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                Pipeline = new Datadog.Inputs.LogsCustomPipelineProcessorPipelineArgs\n                {\n                    Filters = new[]\n                    {\n                        new Datadog.Inputs.LogsCustomPipelineProcessorPipelineFilterArgs\n                        {\n                            Query = \"source:foo\",\n                        },\n                    },\n                    Processors = new[]\n                    {\n                        new Datadog.Inputs.LogsCustomPipelineProcessorPipelineProcessorArgs\n                        {\n                            UrlParser = new Datadog.Inputs.LogsCustomPipelineProcessorPipelineProcessorUrlParserArgs\n                            {\n                                Name = \"sample url parser\",\n                                Sources = new[]\n                                {\n                                    \"url\",\n                                    \"extra\",\n                                },\n                                Target = \"http_url\",\n                                NormalizeEndingSlashes = true,\n                            },\n                        },\n                    },\n                    Name = \"nested pipeline\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                ServiceRemapper = new Datadog.Inputs.LogsCustomPipelineProcessorServiceRemapperArgs\n                {\n                    Sources = new[]\n                    {\n                        \"service\",\n                    },\n                    Name = \"sample service remapper\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                StatusRemapper = new Datadog.Inputs.LogsCustomPipelineProcessorStatusRemapperArgs\n                {\n                    Sources = new[]\n                    {\n                        \"info\",\n                        \"trace\",\n                    },\n                    Name = \"sample status remapper\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                StringBuilderProcessor = new Datadog.Inputs.LogsCustomPipelineProcessorStringBuilderProcessorArgs\n                {\n                    Target = \"user_activity\",\n                    Template = \"%{user.name} logged in at %{timestamp}\",\n                    Name = \"sample string builder processor\",\n                    IsEnabled = true,\n                    IsReplaceMissing = false,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                TraceIdRemapper = new Datadog.Inputs.LogsCustomPipelineProcessorTraceIdRemapperArgs\n                {\n                    Sources = new[]\n                    {\n                        \"dd.trace_id\",\n                    },\n                    Name = \"sample trace id remapper\",\n                    IsEnabled = true,\n                },\n            },\n            new Datadog.Inputs.LogsCustomPipelineProcessorArgs\n            {\n                UserAgentParser = new Datadog.Inputs.LogsCustomPipelineProcessorUserAgentParserArgs\n                {\n                    Sources = new[]\n                    {\n                        \"user\",\n                        \"agent\",\n                    },\n                    Target = \"http_agent\",\n                    IsEncoded = false,\n                    Name = \"sample user agent parser\",\n                    IsEnabled = true,\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewLogsCustomPipeline(ctx, \"sample_pipeline\", \u0026datadog.LogsCustomPipelineArgs{\n\t\t\tFilters: datadog.LogsCustomPipelineFilterArray{\n\t\t\t\t\u0026datadog.LogsCustomPipelineFilterArgs{\n\t\t\t\t\tQuery: pulumi.String(\"source:foo\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tName:      pulumi.String(\"sample pipeline\"),\n\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\tProcessors: datadog.LogsCustomPipelineProcessorArray{\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tArithmeticProcessor: \u0026datadog.LogsCustomPipelineProcessorArithmeticProcessorArgs{\n\t\t\t\t\t\tExpression:       pulumi.String(\"(time1 - time2)*1000\"),\n\t\t\t\t\t\tTarget:           pulumi.String(\"my_arithmetic\"),\n\t\t\t\t\t\tIsReplaceMissing: pulumi.Bool(true),\n\t\t\t\t\t\tName:             pulumi.String(\"sample arithmetic processor\"),\n\t\t\t\t\t\tIsEnabled:        pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tAttributeRemapper: \u0026datadog.LogsCustomPipelineProcessorAttributeRemapperArgs{\n\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"db.instance\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSourceType:         pulumi.String(\"tag\"),\n\t\t\t\t\t\tTarget:             pulumi.String(\"db\"),\n\t\t\t\t\t\tTargetType:         pulumi.String(\"attribute\"),\n\t\t\t\t\t\tTargetFormat:       pulumi.String(\"string\"),\n\t\t\t\t\t\tPreserveSource:     pulumi.Bool(true),\n\t\t\t\t\t\tOverrideOnConflict: pulumi.Bool(false),\n\t\t\t\t\t\tName:               pulumi.String(\"sample attribute processor\"),\n\t\t\t\t\t\tIsEnabled:          pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tCategoryProcessor: \u0026datadog.LogsCustomPipelineProcessorCategoryProcessorArgs{\n\t\t\t\t\t\tTarget: pulumi.String(\"foo.severity\"),\n\t\t\t\t\t\tCategories: datadog.LogsCustomPipelineProcessorCategoryProcessorCategoryArray{\n\t\t\t\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorCategoryProcessorCategoryArgs{\n\t\t\t\t\t\t\t\tName: pulumi.String(\"debug\"),\n\t\t\t\t\t\t\t\tFilter: \u0026datadog.LogsCustomPipelineProcessorCategoryProcessorCategoryFilterArgs{\n\t\t\t\t\t\t\t\t\tQuery: pulumi.String(\"@severity: \\\".\\\"\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorCategoryProcessorCategoryArgs{\n\t\t\t\t\t\t\t\tName: pulumi.String(\"verbose\"),\n\t\t\t\t\t\t\t\tFilter: \u0026datadog.LogsCustomPipelineProcessorCategoryProcessorCategoryFilterArgs{\n\t\t\t\t\t\t\t\t\tQuery: pulumi.String(\"@severity: \\\"-\\\"\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName:      pulumi.String(\"sample category processor\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tDateRemapper: \u0026datadog.LogsCustomPipelineProcessorDateRemapperArgs{\n\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"_timestamp\"),\n\t\t\t\t\t\t\tpulumi.String(\"published_date\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName:      pulumi.String(\"sample date remapper\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tGeoIpParser: \u0026datadog.LogsCustomPipelineProcessorGeoIpParserArgs{\n\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"network.client.ip\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTarget:    pulumi.String(\"network.client.geoip\"),\n\t\t\t\t\t\tName:      pulumi.String(\"sample geo ip parser\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tGrokParser: \u0026datadog.LogsCustomPipelineProcessorGrokParserArgs{\n\t\t\t\t\t\tSamples: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"sample log 1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSource: pulumi.String(\"message\"),\n\t\t\t\t\t\tGrok: \u0026datadog.LogsCustomPipelineProcessorGrokParserGrokArgs{\n\t\t\t\t\t\t\tSupportRules: pulumi.String(\"\"),\n\t\t\t\t\t\t\tMatchRules:   pulumi.String(\"Rule %{word:my_word2} %{number:my_float2}\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName:      pulumi.String(\"sample grok parser\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tLookupProcessor: \u0026datadog.LogsCustomPipelineProcessorLookupProcessorArgs{\n\t\t\t\t\t\tSource: pulumi.String(\"service_id\"),\n\t\t\t\t\t\tTarget: pulumi.String(\"service_name\"),\n\t\t\t\t\t\tLookupTables: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"1,my service\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDefaultLookup: pulumi.String(\"unknown service\"),\n\t\t\t\t\t\tName:          pulumi.String(\"sample lookup processor\"),\n\t\t\t\t\t\tIsEnabled:     pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tMessageRemapper: \u0026datadog.LogsCustomPipelineProcessorMessageRemapperArgs{\n\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"msg\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName:      pulumi.String(\"sample message remapper\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tPipeline: \u0026datadog.LogsCustomPipelineProcessorPipelineArgs{\n\t\t\t\t\t\tFilters: datadog.LogsCustomPipelineProcessorPipelineFilterArray{\n\t\t\t\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorPipelineFilterArgs{\n\t\t\t\t\t\t\t\tQuery: pulumi.String(\"source:foo\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tProcessors: datadog.LogsCustomPipelineProcessorPipelineProcessorArray{\n\t\t\t\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorPipelineProcessorArgs{\n\t\t\t\t\t\t\t\tUrlParser: \u0026datadog.LogsCustomPipelineProcessorPipelineProcessorUrlParserArgs{\n\t\t\t\t\t\t\t\t\tName: pulumi.String(\"sample url parser\"),\n\t\t\t\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"url\"),\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"extra\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tTarget:                 pulumi.String(\"http_url\"),\n\t\t\t\t\t\t\t\t\tNormalizeEndingSlashes: pulumi.Bool(true),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName:      pulumi.String(\"nested pipeline\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tServiceRemapper: \u0026datadog.LogsCustomPipelineProcessorServiceRemapperArgs{\n\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"service\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName:      pulumi.String(\"sample service remapper\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tStatusRemapper: \u0026datadog.LogsCustomPipelineProcessorStatusRemapperArgs{\n\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"info\"),\n\t\t\t\t\t\t\tpulumi.String(\"trace\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName:      pulumi.String(\"sample status remapper\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tStringBuilderProcessor: \u0026datadog.LogsCustomPipelineProcessorStringBuilderProcessorArgs{\n\t\t\t\t\t\tTarget:           pulumi.String(\"user_activity\"),\n\t\t\t\t\t\tTemplate:         pulumi.String(\"%{user.name} logged in at %{timestamp}\"),\n\t\t\t\t\t\tName:             pulumi.String(\"sample string builder processor\"),\n\t\t\t\t\t\tIsEnabled:        pulumi.Bool(true),\n\t\t\t\t\t\tIsReplaceMissing: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tTraceIdRemapper: \u0026datadog.LogsCustomPipelineProcessorTraceIdRemapperArgs{\n\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"dd.trace_id\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName:      pulumi.String(\"sample trace id remapper\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsCustomPipelineProcessorArgs{\n\t\t\t\t\tUserAgentParser: \u0026datadog.LogsCustomPipelineProcessorUserAgentParserArgs{\n\t\t\t\t\t\tSources: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"user\"),\n\t\t\t\t\t\t\tpulumi.String(\"agent\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTarget:    pulumi.String(\"http_agent\"),\n\t\t\t\t\t\tIsEncoded: pulumi.Bool(false),\n\t\t\t\t\t\tName:      pulumi.String(\"sample user agent parser\"),\n\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsCustomPipeline;\nimport com.pulumi.datadog.LogsCustomPipelineArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineFilterArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorArithmeticProcessorArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorAttributeRemapperArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorCategoryProcessorArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorDateRemapperArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorGeoIpParserArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorGrokParserArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorGrokParserGrokArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorLookupProcessorArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorMessageRemapperArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorPipelineArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorServiceRemapperArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorStatusRemapperArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorStringBuilderProcessorArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorTraceIdRemapperArgs;\nimport com.pulumi.datadog.inputs.LogsCustomPipelineProcessorUserAgentParserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var samplePipeline = new LogsCustomPipeline(\"samplePipeline\", LogsCustomPipelineArgs.builder()\n            .filters(LogsCustomPipelineFilterArgs.builder()\n                .query(\"source:foo\")\n                .build())\n            .name(\"sample pipeline\")\n            .isEnabled(true)\n            .processors(            \n                LogsCustomPipelineProcessorArgs.builder()\n                    .arithmeticProcessor(LogsCustomPipelineProcessorArithmeticProcessorArgs.builder()\n                        .expression(\"(time1 - time2)*1000\")\n                        .target(\"my_arithmetic\")\n                        .isReplaceMissing(true)\n                        .name(\"sample arithmetic processor\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .attributeRemapper(LogsCustomPipelineProcessorAttributeRemapperArgs.builder()\n                        .sources(\"db.instance\")\n                        .sourceType(\"tag\")\n                        .target(\"db\")\n                        .targetType(\"attribute\")\n                        .targetFormat(\"string\")\n                        .preserveSource(true)\n                        .overrideOnConflict(false)\n                        .name(\"sample attribute processor\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .categoryProcessor(LogsCustomPipelineProcessorCategoryProcessorArgs.builder()\n                        .target(\"foo.severity\")\n                        .categories(                        \n                            LogsCustomPipelineProcessorCategoryProcessorCategoryArgs.builder()\n                                .name(\"debug\")\n                                .filter(LogsCustomPipelineProcessorCategoryProcessorCategoryFilterArgs.builder()\n                                    .query(\"@severity: \\\".\\\"\")\n                                    .build())\n                                .build(),\n                            LogsCustomPipelineProcessorCategoryProcessorCategoryArgs.builder()\n                                .name(\"verbose\")\n                                .filter(LogsCustomPipelineProcessorCategoryProcessorCategoryFilterArgs.builder()\n                                    .query(\"@severity: \\\"-\\\"\")\n                                    .build())\n                                .build())\n                        .name(\"sample category processor\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .dateRemapper(LogsCustomPipelineProcessorDateRemapperArgs.builder()\n                        .sources(                        \n                            \"_timestamp\",\n                            \"published_date\")\n                        .name(\"sample date remapper\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .geoIpParser(LogsCustomPipelineProcessorGeoIpParserArgs.builder()\n                        .sources(\"network.client.ip\")\n                        .target(\"network.client.geoip\")\n                        .name(\"sample geo ip parser\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .grokParser(LogsCustomPipelineProcessorGrokParserArgs.builder()\n                        .samples(\"sample log 1\")\n                        .source(\"message\")\n                        .grok(LogsCustomPipelineProcessorGrokParserGrokArgs.builder()\n                            .supportRules(\"\")\n                            .matchRules(\"Rule %{word:my_word2} %{number:my_float2}\")\n                            .build())\n                        .name(\"sample grok parser\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .lookupProcessor(LogsCustomPipelineProcessorLookupProcessorArgs.builder()\n                        .source(\"service_id\")\n                        .target(\"service_name\")\n                        .lookupTables(\"1,my service\")\n                        .defaultLookup(\"unknown service\")\n                        .name(\"sample lookup processor\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .messageRemapper(LogsCustomPipelineProcessorMessageRemapperArgs.builder()\n                        .sources(\"msg\")\n                        .name(\"sample message remapper\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .pipeline(LogsCustomPipelineProcessorPipelineArgs.builder()\n                        .filters(LogsCustomPipelineProcessorPipelineFilterArgs.builder()\n                            .query(\"source:foo\")\n                            .build())\n                        .processors(LogsCustomPipelineProcessorPipelineProcessorArgs.builder()\n                            .urlParser(LogsCustomPipelineProcessorPipelineProcessorUrlParserArgs.builder()\n                                .name(\"sample url parser\")\n                                .sources(                                \n                                    \"url\",\n                                    \"extra\")\n                                .target(\"http_url\")\n                                .normalizeEndingSlashes(true)\n                                .build())\n                            .build())\n                        .name(\"nested pipeline\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .serviceRemapper(LogsCustomPipelineProcessorServiceRemapperArgs.builder()\n                        .sources(\"service\")\n                        .name(\"sample service remapper\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .statusRemapper(LogsCustomPipelineProcessorStatusRemapperArgs.builder()\n                        .sources(                        \n                            \"info\",\n                            \"trace\")\n                        .name(\"sample status remapper\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .stringBuilderProcessor(LogsCustomPipelineProcessorStringBuilderProcessorArgs.builder()\n                        .target(\"user_activity\")\n                        .template(\"%{user.name} logged in at %{timestamp}\")\n                        .name(\"sample string builder processor\")\n                        .isEnabled(true)\n                        .isReplaceMissing(false)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .traceIdRemapper(LogsCustomPipelineProcessorTraceIdRemapperArgs.builder()\n                        .sources(\"dd.trace_id\")\n                        .name(\"sample trace id remapper\")\n                        .isEnabled(true)\n                        .build())\n                    .build(),\n                LogsCustomPipelineProcessorArgs.builder()\n                    .userAgentParser(LogsCustomPipelineProcessorUserAgentParserArgs.builder()\n                        .sources(                        \n                            \"user\",\n                            \"agent\")\n                        .target(\"http_agent\")\n                        .isEncoded(false)\n                        .name(\"sample user agent parser\")\n                        .isEnabled(true)\n                        .build())\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  samplePipeline:\n    type: datadog:LogsCustomPipeline\n    name: sample_pipeline\n    properties:\n      filters:\n        - query: source:foo\n      name: sample pipeline\n      isEnabled: true\n      processors:\n        - arithmeticProcessor:\n            expression: (time1 - time2)*1000\n            target: my_arithmetic\n            isReplaceMissing: true\n            name: sample arithmetic processor\n            isEnabled: true\n        - attributeRemapper:\n            sources:\n              - db.instance\n            sourceType: tag\n            target: db\n            targetType: attribute\n            targetFormat: string\n            preserveSource: true\n            overrideOnConflict: false\n            name: sample attribute processor\n            isEnabled: true\n        - categoryProcessor:\n            target: foo.severity\n            categories:\n              - name: debug\n                filter:\n                  query: '@severity: \".\"'\n              - name: verbose\n                filter:\n                  query: '@severity: \"-\"'\n            name: sample category processor\n            isEnabled: true\n        - dateRemapper:\n            sources:\n              - _timestamp\n              - published_date\n            name: sample date remapper\n            isEnabled: true\n        - geoIpParser:\n            sources:\n              - network.client.ip\n            target: network.client.geoip\n            name: sample geo ip parser\n            isEnabled: true\n        - grokParser:\n            samples:\n              - sample log 1\n            source: message\n            grok:\n              supportRules: \"\"\n              matchRules: Rule %{word:my_word2} %{number:my_float2}\n            name: sample grok parser\n            isEnabled: true\n        - lookupProcessor:\n            source: service_id\n            target: service_name\n            lookupTables:\n              - 1,my service\n            defaultLookup: unknown service\n            name: sample lookup processor\n            isEnabled: true\n        - messageRemapper:\n            sources:\n              - msg\n            name: sample message remapper\n            isEnabled: true\n        - pipeline:\n            filters:\n              - query: source:foo\n            processors:\n              - urlParser:\n                  name: sample url parser\n                  sources:\n                    - url\n                    - extra\n                  target: http_url\n                  normalizeEndingSlashes: true\n            name: nested pipeline\n            isEnabled: true\n        - serviceRemapper:\n            sources:\n              - service\n            name: sample service remapper\n            isEnabled: true\n        - statusRemapper:\n            sources:\n              - info\n              - trace\n            name: sample status remapper\n            isEnabled: true\n        - stringBuilderProcessor:\n            target: user_activity\n            template: '%{user.name} logged in at %{timestamp}'\n            name: sample string builder processor\n            isEnabled: true\n            isReplaceMissing: false\n        - traceIdRemapper:\n            sources:\n              - dd.trace_id\n            name: sample trace id remapper\n            isEnabled: true\n        - userAgentParser:\n            sources:\n              - user\n              - agent\n            target: http_agent\n            isEncoded: false\n            name: sample user agent parser\n            isEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nTo find the pipeline ID, click the \"edit\" button in the UI to open the pipeline details.\nThe pipeline ID is the last part of the URL.\n\n```sh\n$ pulumi import datadog:index/logsCustomPipeline:LogsCustomPipeline name\u003e \u003cpipelineID\u003e\n```\n\n",
            "properties": {
                "description": {
                    "type": "string"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineFilter:LogsCustomPipelineFilter"
                    }
                },
                "isEnabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "processors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessor:LogsCustomPipelineProcessor"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "required": [
                "filters",
                "name",
                "tags"
            ],
            "inputProperties": {
                "description": {
                    "type": "string"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineFilter:LogsCustomPipelineFilter"
                    }
                },
                "isEnabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "processors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsCustomPipelineProcessor:LogsCustomPipelineProcessor"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "requiredInputs": [
                "filters",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsCustomPipeline resources.\n",
                "properties": {
                    "description": {
                        "type": "string"
                    },
                    "filters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/LogsCustomPipelineFilter:LogsCustomPipelineFilter"
                        }
                    },
                    "isEnabled": {
                        "type": "boolean"
                    },
                    "name": {
                        "type": "string"
                    },
                    "processors": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/LogsCustomPipelineProcessor:LogsCustomPipelineProcessor"
                        }
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsIndex:LogsIndex": {
            "description": "Provides a Datadog Logs Index API resource. This can be used to create and manage Datadog logs indexes.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// A sample Datadog logs index resource definition.\nconst sampleIndex = new datadog.LogsIndex(\"sample_index\", {\n    name: \"your index\",\n    dailyLimit: 200000,\n    dailyLimitReset: {\n        resetTime: \"14:00\",\n        resetUtcOffset: \"+02:00\",\n    },\n    dailyLimitWarningThresholdPercentage: 50,\n    retentionDays: 7,\n    flexRetentionDays: 180,\n    filters: [{\n        query: \"*\",\n    }],\n    exclusionFilters: [\n        {\n            name: \"Filter coredns logs\",\n            isEnabled: true,\n            filters: [{\n                query: \"app:coredns\",\n                sampleRate: 0.97,\n            }],\n        },\n        {\n            name: \"Kubernetes apiserver\",\n            isEnabled: true,\n            filters: [{\n                query: \"service:kube_apiserver\",\n                sampleRate: 1,\n            }],\n        },\n    ],\n    tags: [\n        \"team:backend\",\n        \"env:production\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# A sample Datadog logs index resource definition.\nsample_index = datadog.LogsIndex(\"sample_index\",\n    name=\"your index\",\n    daily_limit=200000,\n    daily_limit_reset={\n        \"reset_time\": \"14:00\",\n        \"reset_utc_offset\": \"+02:00\",\n    },\n    daily_limit_warning_threshold_percentage=50,\n    retention_days=7,\n    flex_retention_days=180,\n    filters=[{\n        \"query\": \"*\",\n    }],\n    exclusion_filters=[\n        {\n            \"name\": \"Filter coredns logs\",\n            \"is_enabled\": True,\n            \"filters\": [{\n                \"query\": \"app:coredns\",\n                \"sample_rate\": 0.97,\n            }],\n        },\n        {\n            \"name\": \"Kubernetes apiserver\",\n            \"is_enabled\": True,\n            \"filters\": [{\n                \"query\": \"service:kube_apiserver\",\n                \"sample_rate\": 1,\n            }],\n        },\n    ],\n    tags=[\n        \"team:backend\",\n        \"env:production\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // A sample Datadog logs index resource definition.\n    var sampleIndex = new Datadog.LogsIndex(\"sample_index\", new()\n    {\n        Name = \"your index\",\n        DailyLimit = 200000,\n        DailyLimitReset = new Datadog.Inputs.LogsIndexDailyLimitResetArgs\n        {\n            ResetTime = \"14:00\",\n            ResetUtcOffset = \"+02:00\",\n        },\n        DailyLimitWarningThresholdPercentage = 50,\n        RetentionDays = 7,\n        FlexRetentionDays = 180,\n        Filters = new[]\n        {\n            new Datadog.Inputs.LogsIndexFilterArgs\n            {\n                Query = \"*\",\n            },\n        },\n        ExclusionFilters = new[]\n        {\n            new Datadog.Inputs.LogsIndexExclusionFilterArgs\n            {\n                Name = \"Filter coredns logs\",\n                IsEnabled = true,\n                Filters = new[]\n                {\n                    new Datadog.Inputs.LogsIndexExclusionFilterFilterArgs\n                    {\n                        Query = \"app:coredns\",\n                        SampleRate = 0.97,\n                    },\n                },\n            },\n            new Datadog.Inputs.LogsIndexExclusionFilterArgs\n            {\n                Name = \"Kubernetes apiserver\",\n                IsEnabled = true,\n                Filters = new[]\n                {\n                    new Datadog.Inputs.LogsIndexExclusionFilterFilterArgs\n                    {\n                        Query = \"service:kube_apiserver\",\n                        SampleRate = 1,\n                    },\n                },\n            },\n        },\n        Tags = new[]\n        {\n            \"team:backend\",\n            \"env:production\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// A sample Datadog logs index resource definition.\n\t\t_, err := datadog.NewLogsIndex(ctx, \"sample_index\", \u0026datadog.LogsIndexArgs{\n\t\t\tName:       pulumi.String(\"your index\"),\n\t\t\tDailyLimit: pulumi.Int(200000),\n\t\t\tDailyLimitReset: \u0026datadog.LogsIndexDailyLimitResetArgs{\n\t\t\t\tResetTime:      pulumi.String(\"14:00\"),\n\t\t\t\tResetUtcOffset: pulumi.String(\"+02:00\"),\n\t\t\t},\n\t\t\tDailyLimitWarningThresholdPercentage: pulumi.Float64(50),\n\t\t\tRetentionDays:                        pulumi.Int(7),\n\t\t\tFlexRetentionDays:                    pulumi.Int(180),\n\t\t\tFilters: datadog.LogsIndexFilterArray{\n\t\t\t\t\u0026datadog.LogsIndexFilterArgs{\n\t\t\t\t\tQuery: pulumi.String(\"*\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tExclusionFilters: datadog.LogsIndexExclusionFilterArray{\n\t\t\t\t\u0026datadog.LogsIndexExclusionFilterArgs{\n\t\t\t\t\tName:      pulumi.String(\"Filter coredns logs\"),\n\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\tFilters: datadog.LogsIndexExclusionFilterFilterArray{\n\t\t\t\t\t\t\u0026datadog.LogsIndexExclusionFilterFilterArgs{\n\t\t\t\t\t\t\tQuery:      pulumi.String(\"app:coredns\"),\n\t\t\t\t\t\t\tSampleRate: pulumi.Float64(0.97),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsIndexExclusionFilterArgs{\n\t\t\t\t\tName:      pulumi.String(\"Kubernetes apiserver\"),\n\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\tFilters: datadog.LogsIndexExclusionFilterFilterArray{\n\t\t\t\t\t\t\u0026datadog.LogsIndexExclusionFilterFilterArgs{\n\t\t\t\t\t\t\tQuery:      pulumi.String(\"service:kube_apiserver\"),\n\t\t\t\t\t\t\tSampleRate: pulumi.Float64(1),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"team:backend\"),\n\t\t\t\tpulumi.String(\"env:production\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsIndex;\nimport com.pulumi.datadog.LogsIndexArgs;\nimport com.pulumi.datadog.inputs.LogsIndexDailyLimitResetArgs;\nimport com.pulumi.datadog.inputs.LogsIndexFilterArgs;\nimport com.pulumi.datadog.inputs.LogsIndexExclusionFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // A sample Datadog logs index resource definition.\n        var sampleIndex = new LogsIndex(\"sampleIndex\", LogsIndexArgs.builder()\n            .name(\"your index\")\n            .dailyLimit(200000)\n            .dailyLimitReset(LogsIndexDailyLimitResetArgs.builder()\n                .resetTime(\"14:00\")\n                .resetUtcOffset(\"+02:00\")\n                .build())\n            .dailyLimitWarningThresholdPercentage(50.0)\n            .retentionDays(7)\n            .flexRetentionDays(180)\n            .filters(LogsIndexFilterArgs.builder()\n                .query(\"*\")\n                .build())\n            .exclusionFilters(            \n                LogsIndexExclusionFilterArgs.builder()\n                    .name(\"Filter coredns logs\")\n                    .isEnabled(true)\n                    .filters(LogsIndexExclusionFilterFilterArgs.builder()\n                        .query(\"app:coredns\")\n                        .sampleRate(0.97)\n                        .build())\n                    .build(),\n                LogsIndexExclusionFilterArgs.builder()\n                    .name(\"Kubernetes apiserver\")\n                    .isEnabled(true)\n                    .filters(LogsIndexExclusionFilterFilterArgs.builder()\n                        .query(\"service:kube_apiserver\")\n                        .sampleRate(1.0)\n                        .build())\n                    .build())\n            .tags(            \n                \"team:backend\",\n                \"env:production\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # A sample Datadog logs index resource definition.\n  sampleIndex:\n    type: datadog:LogsIndex\n    name: sample_index\n    properties:\n      name: your index\n      dailyLimit: 200000\n      dailyLimitReset:\n        resetTime: 14:00\n        resetUtcOffset: +02:00\n      dailyLimitWarningThresholdPercentage: 50\n      retentionDays: 7\n      flexRetentionDays: 180\n      filters:\n        - query: '*'\n      exclusionFilters:\n        - name: Filter coredns logs\n          isEnabled: true\n          filters:\n            - query: app:coredns\n              sampleRate: 0.97\n        - name: Kubernetes apiserver\n          isEnabled: true\n          filters:\n            - query: service:kube_apiserver\n              sampleRate: 1\n      tags:\n        - team:backend\n        - env:production\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/logsIndex:LogsIndex name\u003e \u003cindexName\u003e\n```\n\n",
            "properties": {
                "dailyLimit": {
                    "type": "integer",
                    "description": "The number of log events you can send in this index per day before you are rate-limited.\n"
                },
                "dailyLimitReset": {
                    "$ref": "#/types/datadog:index/LogsIndexDailyLimitReset:LogsIndexDailyLimitReset",
                    "description": "Object containing options to override the default daily limit reset time.\n"
                },
                "dailyLimitWarningThresholdPercentage": {
                    "type": "number",
                    "description": "A percentage threshold of the daily quota at which a Datadog warning event is generated.\n"
                },
                "disableDailyLimit": {
                    "type": "boolean",
                    "description": "If true, disables the daily limit and sets \u003cspan pulumi-lang-nodejs=\"`dailyLimit`\" pulumi-lang-dotnet=\"`DailyLimit`\" pulumi-lang-go=\"`dailyLimit`\" pulumi-lang-python=\"`daily_limit`\" pulumi-lang-yaml=\"`dailyLimit`\" pulumi-lang-java=\"`dailyLimit`\"\u003e`dailyLimit`\u003c/span\u003e to null. If false, enables the daily limit. When creating an index, if this attribute is omitted, the daily limit is enabled by default. When updating an index, if this attribute is omitted, the existing value is preserved. Providing a \u003cspan pulumi-lang-nodejs=\"`dailyLimit`\" pulumi-lang-dotnet=\"`DailyLimit`\" pulumi-lang-go=\"`dailyLimit`\" pulumi-lang-python=\"`daily_limit`\" pulumi-lang-yaml=\"`dailyLimit`\" pulumi-lang-java=\"`dailyLimit`\"\u003e`dailyLimit`\u003c/span\u003e value does not re-enable the limit if it was previously disabled unless \u003cspan pulumi-lang-nodejs=\"`disableDailyLimit`\" pulumi-lang-dotnet=\"`DisableDailyLimit`\" pulumi-lang-go=\"`disableDailyLimit`\" pulumi-lang-python=\"`disable_daily_limit`\" pulumi-lang-yaml=\"`disableDailyLimit`\" pulumi-lang-java=\"`disableDailyLimit`\"\u003e`disableDailyLimit`\u003c/span\u003e is explicitly set to false.\n"
                },
                "exclusionFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsIndexExclusionFilter:LogsIndexExclusionFilter"
                    },
                    "description": "List of exclusion filters.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsIndexFilter:LogsIndexFilter"
                    },
                    "description": "Logs filter\n"
                },
                "flexRetentionDays": {
                    "type": "integer",
                    "description": "The total number of days logs are stored in Standard and Flex Tier before being deleted from the index.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the index. Index names cannot be modified after creation. If this value is changed, a new index will be created.\n"
                },
                "retentionDays": {
                    "type": "integer",
                    "description": "The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags for this index. Tags must be in `key:value` format. If default tags are present at the provider level, they will be added to this resource.\n"
                }
            },
            "required": [
                "dailyLimitReset",
                "dailyLimitWarningThresholdPercentage",
                "disableDailyLimit",
                "filters",
                "flexRetentionDays",
                "name",
                "retentionDays",
                "tags"
            ],
            "inputProperties": {
                "dailyLimit": {
                    "type": "integer",
                    "description": "The number of log events you can send in this index per day before you are rate-limited.\n"
                },
                "dailyLimitReset": {
                    "$ref": "#/types/datadog:index/LogsIndexDailyLimitReset:LogsIndexDailyLimitReset",
                    "description": "Object containing options to override the default daily limit reset time.\n"
                },
                "dailyLimitWarningThresholdPercentage": {
                    "type": "number",
                    "description": "A percentage threshold of the daily quota at which a Datadog warning event is generated.\n"
                },
                "disableDailyLimit": {
                    "type": "boolean",
                    "description": "If true, disables the daily limit and sets \u003cspan pulumi-lang-nodejs=\"`dailyLimit`\" pulumi-lang-dotnet=\"`DailyLimit`\" pulumi-lang-go=\"`dailyLimit`\" pulumi-lang-python=\"`daily_limit`\" pulumi-lang-yaml=\"`dailyLimit`\" pulumi-lang-java=\"`dailyLimit`\"\u003e`dailyLimit`\u003c/span\u003e to null. If false, enables the daily limit. When creating an index, if this attribute is omitted, the daily limit is enabled by default. When updating an index, if this attribute is omitted, the existing value is preserved. Providing a \u003cspan pulumi-lang-nodejs=\"`dailyLimit`\" pulumi-lang-dotnet=\"`DailyLimit`\" pulumi-lang-go=\"`dailyLimit`\" pulumi-lang-python=\"`daily_limit`\" pulumi-lang-yaml=\"`dailyLimit`\" pulumi-lang-java=\"`dailyLimit`\"\u003e`dailyLimit`\u003c/span\u003e value does not re-enable the limit if it was previously disabled unless \u003cspan pulumi-lang-nodejs=\"`disableDailyLimit`\" pulumi-lang-dotnet=\"`DisableDailyLimit`\" pulumi-lang-go=\"`disableDailyLimit`\" pulumi-lang-python=\"`disable_daily_limit`\" pulumi-lang-yaml=\"`disableDailyLimit`\" pulumi-lang-java=\"`disableDailyLimit`\"\u003e`disableDailyLimit`\u003c/span\u003e is explicitly set to false.\n"
                },
                "exclusionFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsIndexExclusionFilter:LogsIndexExclusionFilter"
                    },
                    "description": "List of exclusion filters.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsIndexFilter:LogsIndexFilter"
                    },
                    "description": "Logs filter\n"
                },
                "flexRetentionDays": {
                    "type": "integer",
                    "description": "The total number of days logs are stored in Standard and Flex Tier before being deleted from the index.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the index. Index names cannot be modified after creation. If this value is changed, a new index will be created.\n",
                    "willReplaceOnChanges": true
                },
                "retentionDays": {
                    "type": "integer",
                    "description": "The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags for this index. Tags must be in `key:value` format. If default tags are present at the provider level, they will be added to this resource.\n"
                }
            },
            "requiredInputs": [
                "filters",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsIndex resources.\n",
                "properties": {
                    "dailyLimit": {
                        "type": "integer",
                        "description": "The number of log events you can send in this index per day before you are rate-limited.\n"
                    },
                    "dailyLimitReset": {
                        "$ref": "#/types/datadog:index/LogsIndexDailyLimitReset:LogsIndexDailyLimitReset",
                        "description": "Object containing options to override the default daily limit reset time.\n"
                    },
                    "dailyLimitWarningThresholdPercentage": {
                        "type": "number",
                        "description": "A percentage threshold of the daily quota at which a Datadog warning event is generated.\n"
                    },
                    "disableDailyLimit": {
                        "type": "boolean",
                        "description": "If true, disables the daily limit and sets \u003cspan pulumi-lang-nodejs=\"`dailyLimit`\" pulumi-lang-dotnet=\"`DailyLimit`\" pulumi-lang-go=\"`dailyLimit`\" pulumi-lang-python=\"`daily_limit`\" pulumi-lang-yaml=\"`dailyLimit`\" pulumi-lang-java=\"`dailyLimit`\"\u003e`dailyLimit`\u003c/span\u003e to null. If false, enables the daily limit. When creating an index, if this attribute is omitted, the daily limit is enabled by default. When updating an index, if this attribute is omitted, the existing value is preserved. Providing a \u003cspan pulumi-lang-nodejs=\"`dailyLimit`\" pulumi-lang-dotnet=\"`DailyLimit`\" pulumi-lang-go=\"`dailyLimit`\" pulumi-lang-python=\"`daily_limit`\" pulumi-lang-yaml=\"`dailyLimit`\" pulumi-lang-java=\"`dailyLimit`\"\u003e`dailyLimit`\u003c/span\u003e value does not re-enable the limit if it was previously disabled unless \u003cspan pulumi-lang-nodejs=\"`disableDailyLimit`\" pulumi-lang-dotnet=\"`DisableDailyLimit`\" pulumi-lang-go=\"`disableDailyLimit`\" pulumi-lang-python=\"`disable_daily_limit`\" pulumi-lang-yaml=\"`disableDailyLimit`\" pulumi-lang-java=\"`disableDailyLimit`\"\u003e`disableDailyLimit`\u003c/span\u003e is explicitly set to false.\n"
                    },
                    "exclusionFilters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/LogsIndexExclusionFilter:LogsIndexExclusionFilter"
                        },
                        "description": "List of exclusion filters.\n"
                    },
                    "filters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/LogsIndexFilter:LogsIndexFilter"
                        },
                        "description": "Logs filter\n"
                    },
                    "flexRetentionDays": {
                        "type": "integer",
                        "description": "The total number of days logs are stored in Standard and Flex Tier before being deleted from the index.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the index. Index names cannot be modified after creation. If this value is changed, a new index will be created.\n",
                        "willReplaceOnChanges": true
                    },
                    "retentionDays": {
                        "type": "integer",
                        "description": "The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of tags for this index. Tags must be in `key:value` format. If default tags are present at the provider level, they will be added to this resource.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsIndexOrder:LogsIndexOrder": {
            "description": "Provides a Datadog Logs Index API resource. This can be used to manage the order of Datadog logs indexes.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst sampleIndexOrder = new datadog.LogsIndexOrder(\"sample_index_order\", {\n    name: \"sample_index_order\",\n    indexes: [sampleIndex.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nsample_index_order = datadog.LogsIndexOrder(\"sample_index_order\",\n    name=\"sample_index_order\",\n    indexes=[sample_index[\"id\"]])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var sampleIndexOrder = new Datadog.LogsIndexOrder(\"sample_index_order\", new()\n    {\n        Name = \"sample_index_order\",\n        Indexes = new[]\n        {\n            sampleIndex.Id,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewLogsIndexOrder(ctx, \"sample_index_order\", \u0026datadog.LogsIndexOrderArgs{\n\t\t\tName: pulumi.String(\"sample_index_order\"),\n\t\t\tIndexes: pulumi.StringArray{\n\t\t\t\tsampleIndex.Id,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsIndexOrder;\nimport com.pulumi.datadog.LogsIndexOrderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var sampleIndexOrder = new LogsIndexOrder(\"sampleIndexOrder\", LogsIndexOrderArgs.builder()\n            .name(\"sample_index_order\")\n            .indexes(sampleIndex.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  sampleIndexOrder:\n    type: datadog:LogsIndexOrder\n    name: sample_index_order\n    properties:\n      name: sample_index_order\n      indexes:\n        - ${sampleIndex.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nThe Datadog Terraform Provider does not support the creation and deletion of index orders. There must be at most one \u003cspan pulumi-lang-nodejs=\"`datadog.LogsIndexOrder`\" pulumi-lang-dotnet=\"`datadog.LogsIndexOrder`\" pulumi-lang-go=\"`LogsIndexOrder`\" pulumi-lang-python=\"`LogsIndexOrder`\" pulumi-lang-yaml=\"`datadog.LogsIndexOrder`\" pulumi-lang-java=\"`datadog.LogsIndexOrder`\"\u003e`datadog.LogsIndexOrder`\u003c/span\u003e resource\n`\u003cname\u003e` can be whatever you specify in your code. Datadog does not store the name on the server.\n\n```sh\n$ pulumi import datadog:index/logsIndexOrder:LogsIndexOrder name\u003e \u003cname\u003e\n```\n\n",
            "properties": {
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The index resource list. Logs are tested against the query filter of each index one by one following the order of the list.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The unique name of the index order resource.\n"
                }
            },
            "required": [
                "indexes",
                "name"
            ],
            "inputProperties": {
                "indexes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The index resource list. Logs are tested against the query filter of each index one by one following the order of the list.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The unique name of the index order resource.\n"
                }
            },
            "requiredInputs": [
                "indexes"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsIndexOrder resources.\n",
                "properties": {
                    "indexes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The index resource list. Logs are tested against the query filter of each index one by one following the order of the list.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The unique name of the index order resource.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsIntegrationPipeline:LogsIntegrationPipeline": {
            "description": "Provides a Datadog Logs Pipeline API resource to manage the integrations. Integration pipelines are the pipelines that are automatically installed for your organization when sending the logs with specific sources. You don't need to maintain or update these types of pipelines. Keeping them as resources, however, allows you to manage the order of your pipelines by referencing them in your \u003cspan pulumi-lang-nodejs=\"`datadog.LogsPipelineOrder`\" pulumi-lang-dotnet=\"`datadog.LogsPipelineOrder`\" pulumi-lang-go=\"`LogsPipelineOrder`\" pulumi-lang-python=\"`LogsPipelineOrder`\" pulumi-lang-yaml=\"`datadog.LogsPipelineOrder`\" pulumi-lang-java=\"`datadog.LogsPipelineOrder`\"\u003e`datadog.LogsPipelineOrder`\u003c/span\u003e resource. If you don't need the \u003cspan pulumi-lang-nodejs=\"`pipelineOrder`\" pulumi-lang-dotnet=\"`PipelineOrder`\" pulumi-lang-go=\"`pipelineOrder`\" pulumi-lang-python=\"`pipeline_order`\" pulumi-lang-yaml=\"`pipelineOrder`\" pulumi-lang-java=\"`pipelineOrder`\"\u003e`pipelineOrder`\u003c/span\u003e feature, this resource declaration can be omitted.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst python = new datadog.LogsIntegrationPipeline(\"python\", {isEnabled: true});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\npython = datadog.LogsIntegrationPipeline(\"python\", is_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var python = new Datadog.LogsIntegrationPipeline(\"python\", new()\n    {\n        IsEnabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewLogsIntegrationPipeline(ctx, \"python\", \u0026datadog.LogsIntegrationPipelineArgs{\n\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsIntegrationPipeline;\nimport com.pulumi.datadog.LogsIntegrationPipelineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var python = new LogsIntegrationPipeline(\"python\", LogsIntegrationPipelineArgs.builder()\n            .isEnabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  python:\n    type: datadog:LogsIntegrationPipeline\n    properties:\n      isEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nTo find the pipeline ID, click the \"view\" button in the UI to open the pipeline details.\nThe pipeline ID is the last part of the URL.\n\n```sh\n$ pulumi import datadog:index/logsIntegrationPipeline:LogsIntegrationPipeline name\u003e \u003cpipelineID\u003e\n```\n\n",
            "properties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "Boolean value to enable your pipeline.\n"
                }
            },
            "inputProperties": {
                "isEnabled": {
                    "type": "boolean",
                    "description": "Boolean value to enable your pipeline.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsIntegrationPipeline resources.\n",
                "properties": {
                    "isEnabled": {
                        "type": "boolean",
                        "description": "Boolean value to enable your pipeline.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsMetric:LogsMetric": {
            "description": "Resource for interacting with the\u003cspan pulumi-lang-nodejs=\" logsMetric \" pulumi-lang-dotnet=\" LogsMetric \" pulumi-lang-go=\" logsMetric \" pulumi-lang-python=\" logs_metric \" pulumi-lang-yaml=\" logsMetric \" pulumi-lang-java=\" logsMetric \"\u003e logsMetric \u003c/span\u003eAPI\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst testingLogsMetric = new datadog.LogsMetric(\"testing_logs_metric\", {\n    name: \"testing.logs.metric\",\n    compute: {\n        aggregationType: \"distribution\",\n        path: \"@duration\",\n    },\n    filter: {\n        query: \"service:test\",\n    },\n    groupBies: [\n        {\n            path: \"@status\",\n            tagName: \"status\",\n        },\n        {\n            path: \"@version\",\n            tagName: \"version\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntesting_logs_metric = datadog.LogsMetric(\"testing_logs_metric\",\n    name=\"testing.logs.metric\",\n    compute={\n        \"aggregation_type\": \"distribution\",\n        \"path\": \"@duration\",\n    },\n    filter={\n        \"query\": \"service:test\",\n    },\n    group_bies=[\n        {\n            \"path\": \"@status\",\n            \"tag_name\": \"status\",\n        },\n        {\n            \"path\": \"@version\",\n            \"tag_name\": \"version\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var testingLogsMetric = new Datadog.LogsMetric(\"testing_logs_metric\", new()\n    {\n        Name = \"testing.logs.metric\",\n        Compute = new Datadog.Inputs.LogsMetricComputeArgs\n        {\n            AggregationType = \"distribution\",\n            Path = \"@duration\",\n        },\n        Filter = new Datadog.Inputs.LogsMetricFilterArgs\n        {\n            Query = \"service:test\",\n        },\n        GroupBies = new[]\n        {\n            new Datadog.Inputs.LogsMetricGroupByArgs\n            {\n                Path = \"@status\",\n                TagName = \"status\",\n            },\n            new Datadog.Inputs.LogsMetricGroupByArgs\n            {\n                Path = \"@version\",\n                TagName = \"version\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewLogsMetric(ctx, \"testing_logs_metric\", \u0026datadog.LogsMetricArgs{\n\t\t\tName: pulumi.String(\"testing.logs.metric\"),\n\t\t\tCompute: \u0026datadog.LogsMetricComputeArgs{\n\t\t\t\tAggregationType: pulumi.String(\"distribution\"),\n\t\t\t\tPath:            pulumi.String(\"@duration\"),\n\t\t\t},\n\t\t\tFilter: \u0026datadog.LogsMetricFilterArgs{\n\t\t\t\tQuery: pulumi.String(\"service:test\"),\n\t\t\t},\n\t\t\tGroupBies: datadog.LogsMetricGroupByArray{\n\t\t\t\t\u0026datadog.LogsMetricGroupByArgs{\n\t\t\t\t\tPath:    pulumi.String(\"@status\"),\n\t\t\t\t\tTagName: pulumi.String(\"status\"),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.LogsMetricGroupByArgs{\n\t\t\t\t\tPath:    pulumi.String(\"@version\"),\n\t\t\t\t\tTagName: pulumi.String(\"version\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsMetric;\nimport com.pulumi.datadog.LogsMetricArgs;\nimport com.pulumi.datadog.inputs.LogsMetricComputeArgs;\nimport com.pulumi.datadog.inputs.LogsMetricFilterArgs;\nimport com.pulumi.datadog.inputs.LogsMetricGroupByArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var testingLogsMetric = new LogsMetric(\"testingLogsMetric\", LogsMetricArgs.builder()\n            .name(\"testing.logs.metric\")\n            .compute(LogsMetricComputeArgs.builder()\n                .aggregationType(\"distribution\")\n                .path(\"@duration\")\n                .build())\n            .filter(LogsMetricFilterArgs.builder()\n                .query(\"service:test\")\n                .build())\n            .groupBies(            \n                LogsMetricGroupByArgs.builder()\n                    .path(\"@status\")\n                    .tagName(\"status\")\n                    .build(),\n                LogsMetricGroupByArgs.builder()\n                    .path(\"@version\")\n                    .tagName(\"version\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  testingLogsMetric:\n    type: datadog:LogsMetric\n    name: testing_logs_metric\n    properties:\n      name: testing.logs.metric\n      compute:\n        aggregationType: distribution\n        path: '@duration'\n      filter:\n        query: service:test\n      groupBies:\n        - path: '@status'\n          tagName: status\n        - path: '@version'\n          tagName: version\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/logsMetric:LogsMetric testing_logs_metric testing.logs.metric\n```\n\n",
            "properties": {
                "compute": {
                    "$ref": "#/types/datadog:index/LogsMetricCompute:LogsMetricCompute",
                    "description": "The compute rule to compute the log-based metric. This field can't be updated after creation.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/LogsMetricFilter:LogsMetricFilter",
                    "description": "The log-based metric filter. Logs matching this filter will be aggregated in this metric.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsMetricGroupBy:LogsMetricGroupBy"
                    },
                    "description": "The rules for the group by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the log-based metric. This field can't be updated after creation.\n"
                }
            },
            "required": [
                "compute",
                "filter",
                "name"
            ],
            "inputProperties": {
                "compute": {
                    "$ref": "#/types/datadog:index/LogsMetricCompute:LogsMetricCompute",
                    "description": "The compute rule to compute the log-based metric. This field can't be updated after creation.\n",
                    "willReplaceOnChanges": true
                },
                "filter": {
                    "$ref": "#/types/datadog:index/LogsMetricFilter:LogsMetricFilter",
                    "description": "The log-based metric filter. Logs matching this filter will be aggregated in this metric.\n"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/LogsMetricGroupBy:LogsMetricGroupBy"
                    },
                    "description": "The rules for the group by.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the log-based metric. This field can't be updated after creation.\n",
                    "willReplaceOnChanges": true
                }
            },
            "requiredInputs": [
                "compute",
                "filter",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsMetric resources.\n",
                "properties": {
                    "compute": {
                        "$ref": "#/types/datadog:index/LogsMetricCompute:LogsMetricCompute",
                        "description": "The compute rule to compute the log-based metric. This field can't be updated after creation.\n",
                        "willReplaceOnChanges": true
                    },
                    "filter": {
                        "$ref": "#/types/datadog:index/LogsMetricFilter:LogsMetricFilter",
                        "description": "The log-based metric filter. Logs matching this filter will be aggregated in this metric.\n"
                    },
                    "groupBies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/LogsMetricGroupBy:LogsMetricGroupBy"
                        },
                        "description": "The rules for the group by.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the log-based metric. This field can't be updated after creation.\n",
                        "willReplaceOnChanges": true
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsPipelineOrder:LogsPipelineOrder": {
            "description": "Provides a Datadog Logs Pipeline API resource, which is used to manage Datadog log pipelines order.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst samplePipelineOrder = new datadog.LogsPipelineOrder(\"sample_pipeline_order\", {\n    name: \"sample_pipeline_order\",\n    pipelines: [\n        samplePipeline.id,\n        python.id,\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nsample_pipeline_order = datadog.LogsPipelineOrder(\"sample_pipeline_order\",\n    name=\"sample_pipeline_order\",\n    pipelines=[\n        sample_pipeline[\"id\"],\n        python[\"id\"],\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var samplePipelineOrder = new Datadog.LogsPipelineOrder(\"sample_pipeline_order\", new()\n    {\n        Name = \"sample_pipeline_order\",\n        Pipelines = new[]\n        {\n            samplePipeline.Id,\n            python.Id,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewLogsPipelineOrder(ctx, \"sample_pipeline_order\", \u0026datadog.LogsPipelineOrderArgs{\n\t\t\tName: pulumi.String(\"sample_pipeline_order\"),\n\t\t\tPipelines: pulumi.StringArray{\n\t\t\t\tsamplePipeline.Id,\n\t\t\t\tpython.Id,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsPipelineOrder;\nimport com.pulumi.datadog.LogsPipelineOrderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var samplePipelineOrder = new LogsPipelineOrder(\"samplePipelineOrder\", LogsPipelineOrderArgs.builder()\n            .name(\"sample_pipeline_order\")\n            .pipelines(            \n                samplePipeline.id(),\n                python.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  samplePipelineOrder:\n    type: datadog:LogsPipelineOrder\n    name: sample_pipeline_order\n    properties:\n      name: sample_pipeline_order\n      pipelines:\n        - ${samplePipeline.id}\n        - ${python.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nThere must be at most one\u003cspan pulumi-lang-nodejs=\" datadog.LogsPipelineOrder \" pulumi-lang-dotnet=\" datadog.LogsPipelineOrder \" pulumi-lang-go=\" LogsPipelineOrder \" pulumi-lang-python=\" LogsPipelineOrder \" pulumi-lang-yaml=\" datadog.LogsPipelineOrder \" pulumi-lang-java=\" datadog.LogsPipelineOrder \"\u003e datadog.LogsPipelineOrder \u003c/span\u003eresource. Pipeline order creation is not supported from logs config API. You can import the\u003cspan pulumi-lang-nodejs=\" datadog.LogsPipelineOrder \" pulumi-lang-dotnet=\" datadog.LogsPipelineOrder \" pulumi-lang-go=\" LogsPipelineOrder \" pulumi-lang-python=\" LogsPipelineOrder \" pulumi-lang-yaml=\" datadog.LogsPipelineOrder \" pulumi-lang-java=\" datadog.LogsPipelineOrder \"\u003e datadog.LogsPipelineOrder \u003c/span\u003eor create a pipeline order (which is actually doing the update operation).\n\n```sh\n$ pulumi import datadog:index/logsPipelineOrder:LogsPipelineOrder name\u003e \u003cname\u003e\n```\n\n",
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name attribute in the resource \u003cspan pulumi-lang-nodejs=\"`datadog.LogsPipelineOrder`\" pulumi-lang-dotnet=\"`datadog.LogsPipelineOrder`\" pulumi-lang-go=\"`LogsPipelineOrder`\" pulumi-lang-python=\"`LogsPipelineOrder`\" pulumi-lang-yaml=\"`datadog.LogsPipelineOrder`\" pulumi-lang-java=\"`datadog.LogsPipelineOrder`\"\u003e`datadog.LogsPipelineOrder`\u003c/span\u003e needs to be unique. It's recommended to use the same value as the resource name. No related field is available in [Logs Pipeline API](https://docs.datadoghq.com/api/v1/logs-pipelines/#get-pipeline-order).\n"
                },
                "pipelines": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The pipeline IDs list. The order of pipeline IDs in this attribute defines the overall pipeline order for logs.\n"
                }
            },
            "required": [
                "name",
                "pipelines"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "The name attribute in the resource \u003cspan pulumi-lang-nodejs=\"`datadog.LogsPipelineOrder`\" pulumi-lang-dotnet=\"`datadog.LogsPipelineOrder`\" pulumi-lang-go=\"`LogsPipelineOrder`\" pulumi-lang-python=\"`LogsPipelineOrder`\" pulumi-lang-yaml=\"`datadog.LogsPipelineOrder`\" pulumi-lang-java=\"`datadog.LogsPipelineOrder`\"\u003e`datadog.LogsPipelineOrder`\u003c/span\u003e needs to be unique. It's recommended to use the same value as the resource name. No related field is available in [Logs Pipeline API](https://docs.datadoghq.com/api/v1/logs-pipelines/#get-pipeline-order).\n"
                },
                "pipelines": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The pipeline IDs list. The order of pipeline IDs in this attribute defines the overall pipeline order for logs.\n"
                }
            },
            "requiredInputs": [
                "name",
                "pipelines"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsPipelineOrder resources.\n",
                "properties": {
                    "name": {
                        "type": "string",
                        "description": "The name attribute in the resource \u003cspan pulumi-lang-nodejs=\"`datadog.LogsPipelineOrder`\" pulumi-lang-dotnet=\"`datadog.LogsPipelineOrder`\" pulumi-lang-go=\"`LogsPipelineOrder`\" pulumi-lang-python=\"`LogsPipelineOrder`\" pulumi-lang-yaml=\"`datadog.LogsPipelineOrder`\" pulumi-lang-java=\"`datadog.LogsPipelineOrder`\"\u003e`datadog.LogsPipelineOrder`\u003c/span\u003e needs to be unique. It's recommended to use the same value as the resource name. No related field is available in [Logs Pipeline API](https://docs.datadoghq.com/api/v1/logs-pipelines/#get-pipeline-order).\n"
                    },
                    "pipelines": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The pipeline IDs list. The order of pipeline IDs in this attribute defines the overall pipeline order for logs.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/logsRestrictionQuery:LogsRestrictionQuery": {
            "description": "Provides a Datadog Log Restriction Query resource. This can be used to create and manage Datadog Log Restriction Queries.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Manage a Datadog log restriction query\nconst testLrq = new datadog.LogsRestrictionQuery(\"test_lrq\", {\n    restrictionQuery: \"service:foo\",\n    roleIds: [\n        \"00000000-0000-1111-0000-000000000000\",\n        \"11111111-1111-0000-1111-111111111111\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Manage a Datadog log restriction query\ntest_lrq = datadog.LogsRestrictionQuery(\"test_lrq\",\n    restriction_query=\"service:foo\",\n    role_ids=[\n        \"00000000-0000-1111-0000-000000000000\",\n        \"11111111-1111-0000-1111-111111111111\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Manage a Datadog log restriction query\n    var testLrq = new Datadog.LogsRestrictionQuery(\"test_lrq\", new()\n    {\n        RestrictionQuery = \"service:foo\",\n        RoleIds = new[]\n        {\n            \"00000000-0000-1111-0000-000000000000\",\n            \"11111111-1111-0000-1111-111111111111\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Manage a Datadog log restriction query\n\t\t_, err := datadog.NewLogsRestrictionQuery(ctx, \"test_lrq\", \u0026datadog.LogsRestrictionQueryArgs{\n\t\t\tRestrictionQuery: pulumi.String(\"service:foo\"),\n\t\t\tRoleIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"00000000-0000-1111-0000-000000000000\"),\n\t\t\t\tpulumi.String(\"11111111-1111-0000-1111-111111111111\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.LogsRestrictionQuery;\nimport com.pulumi.datadog.LogsRestrictionQueryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Manage a Datadog log restriction query\n        var testLrq = new LogsRestrictionQuery(\"testLrq\", LogsRestrictionQueryArgs.builder()\n            .restrictionQuery(\"service:foo\")\n            .roleIds(            \n                \"00000000-0000-1111-0000-000000000000\",\n                \"11111111-1111-0000-1111-111111111111\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Manage a Datadog log restriction query\n  testLrq:\n    type: datadog:LogsRestrictionQuery\n    name: test_lrq\n    properties:\n      restrictionQuery: service:foo\n      roleIds:\n        - 00000000-0000-1111-0000-000000000000\n        - 11111111-1111-0000-1111-111111111111\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/logsRestrictionQuery:LogsRestrictionQuery test_lrq \"\u003crestriction_query_id\u003e\"\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "string",
                    "description": "Creation time of the restriction query (in ISO 8601).\n"
                },
                "modifiedAt": {
                    "type": "string",
                    "description": "Time of last restriction query modification (in ISO 8601).\n"
                },
                "restrictionQuery": {
                    "type": "string",
                    "description": "The query that defines the restriction. Only the content matching the query can be returned.\n"
                },
                "roleIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of role IDs that have access to this restriction query.\n"
                }
            },
            "required": [
                "createdAt",
                "modifiedAt",
                "restrictionQuery",
                "roleIds"
            ],
            "inputProperties": {
                "restrictionQuery": {
                    "type": "string",
                    "description": "The query that defines the restriction. Only the content matching the query can be returned.\n"
                },
                "roleIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "An array of role IDs that have access to this restriction query.\n"
                }
            },
            "requiredInputs": [
                "restrictionQuery"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering LogsRestrictionQuery resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "string",
                        "description": "Creation time of the restriction query (in ISO 8601).\n"
                    },
                    "modifiedAt": {
                        "type": "string",
                        "description": "Time of last restriction query modification (in ISO 8601).\n"
                    },
                    "restrictionQuery": {
                        "type": "string",
                        "description": "The query that defines the restriction. Only the content matching the query can be returned.\n"
                    },
                    "roleIds": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "An array of role IDs that have access to this restriction query.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/metricMetadata:MetricMetadata": {
            "description": "Provides a Datadog\u003cspan pulumi-lang-nodejs=\" metricMetadata \" pulumi-lang-dotnet=\" MetricMetadata \" pulumi-lang-go=\" metricMetadata \" pulumi-lang-python=\" metric_metadata \" pulumi-lang-yaml=\" metricMetadata \" pulumi-lang-java=\" metricMetadata \"\u003e metricMetadata \u003c/span\u003eresource. This can be used to manage a metric's metadata.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Manage a Datadog metric's metadata\nconst requestTime = new datadog.MetricMetadata(\"request_time\", {\n    metric: \"request.time\",\n    shortName: \"Request time\",\n    description: \"99th percentile request time in milliseconds\",\n    type: \"gauge\",\n    unit: \"millisecond\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Manage a Datadog metric's metadata\nrequest_time = datadog.MetricMetadata(\"request_time\",\n    metric=\"request.time\",\n    short_name=\"Request time\",\n    description=\"99th percentile request time in milliseconds\",\n    type=\"gauge\",\n    unit=\"millisecond\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Manage a Datadog metric's metadata\n    var requestTime = new Datadog.MetricMetadata(\"request_time\", new()\n    {\n        Metric = \"request.time\",\n        ShortName = \"Request time\",\n        Description = \"99th percentile request time in milliseconds\",\n        Type = \"gauge\",\n        Unit = \"millisecond\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Manage a Datadog metric's metadata\n\t\t_, err := datadog.NewMetricMetadata(ctx, \"request_time\", \u0026datadog.MetricMetadataArgs{\n\t\t\tMetric:      pulumi.String(\"request.time\"),\n\t\t\tShortName:   pulumi.String(\"Request time\"),\n\t\t\tDescription: pulumi.String(\"99th percentile request time in milliseconds\"),\n\t\t\tType:        pulumi.String(\"gauge\"),\n\t\t\tUnit:        pulumi.String(\"millisecond\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.MetricMetadata;\nimport com.pulumi.datadog.MetricMetadataArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Manage a Datadog metric's metadata\n        var requestTime = new MetricMetadata(\"requestTime\", MetricMetadataArgs.builder()\n            .metric(\"request.time\")\n            .shortName(\"Request time\")\n            .description(\"99th percentile request time in milliseconds\")\n            .type(\"gauge\")\n            .unit(\"millisecond\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Manage a Datadog metric's metadata\n  requestTime:\n    type: datadog:MetricMetadata\n    name: request_time\n    properties:\n      metric: request.time\n      shortName: Request time\n      description: 99th percentile request time in milliseconds\n      type: gauge\n      unit: millisecond\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/metricMetadata:MetricMetadata request_time request.time\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "A description of the metric.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The name of the metric.\n"
                },
                "perUnit": {
                    "type": "string",
                    "description": "Per unit of the metric such as \u003cspan pulumi-lang-nodejs=\"`second`\" pulumi-lang-dotnet=\"`Second`\" pulumi-lang-go=\"`second`\" pulumi-lang-python=\"`second`\" pulumi-lang-yaml=\"`second`\" pulumi-lang-java=\"`second`\"\u003e`second`\u003c/span\u003e in `bytes per second`.\n"
                },
                "shortName": {
                    "type": "string",
                    "description": "A short name of the metric.\n"
                },
                "statsdInterval": {
                    "type": "integer",
                    "description": "If applicable, statsd flush interval in seconds for the metric.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Metric type such as \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gauge`\" pulumi-lang-dotnet=\"`Gauge`\" pulumi-lang-go=\"`gauge`\" pulumi-lang-python=\"`gauge`\" pulumi-lang-yaml=\"`gauge`\" pulumi-lang-java=\"`gauge`\"\u003e`gauge`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`rate`\" pulumi-lang-dotnet=\"`Rate`\" pulumi-lang-go=\"`rate`\" pulumi-lang-python=\"`rate`\" pulumi-lang-yaml=\"`rate`\" pulumi-lang-java=\"`rate`\"\u003e`rate`\u003c/span\u003e. Updating a metric of type \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e is not supported. If you would like to see the \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e type returned, contact [Datadog support](https://docs.datadoghq.com/help/).\n"
                },
                "unit": {
                    "type": "string",
                    "description": "Primary unit of the metric such as \u003cspan pulumi-lang-nodejs=\"`byte`\" pulumi-lang-dotnet=\"`Byte`\" pulumi-lang-go=\"`byte`\" pulumi-lang-python=\"`byte`\" pulumi-lang-yaml=\"`byte`\" pulumi-lang-java=\"`byte`\"\u003e`byte`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`operation`\" pulumi-lang-dotnet=\"`Operation`\" pulumi-lang-go=\"`operation`\" pulumi-lang-python=\"`operation`\" pulumi-lang-yaml=\"`operation`\" pulumi-lang-java=\"`operation`\"\u003e`operation`\u003c/span\u003e. For a list of allowed units, refer to [Datadog metric unit documentation](https://docs.datadoghq.com/metrics/units/#unit-list).\n"
                }
            },
            "required": [
                "metric"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "A description of the metric.\n"
                },
                "metric": {
                    "type": "string",
                    "description": "The name of the metric.\n"
                },
                "perUnit": {
                    "type": "string",
                    "description": "Per unit of the metric such as \u003cspan pulumi-lang-nodejs=\"`second`\" pulumi-lang-dotnet=\"`Second`\" pulumi-lang-go=\"`second`\" pulumi-lang-python=\"`second`\" pulumi-lang-yaml=\"`second`\" pulumi-lang-java=\"`second`\"\u003e`second`\u003c/span\u003e in `bytes per second`.\n"
                },
                "shortName": {
                    "type": "string",
                    "description": "A short name of the metric.\n"
                },
                "statsdInterval": {
                    "type": "integer",
                    "description": "If applicable, statsd flush interval in seconds for the metric.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Metric type such as \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gauge`\" pulumi-lang-dotnet=\"`Gauge`\" pulumi-lang-go=\"`gauge`\" pulumi-lang-python=\"`gauge`\" pulumi-lang-yaml=\"`gauge`\" pulumi-lang-java=\"`gauge`\"\u003e`gauge`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`rate`\" pulumi-lang-dotnet=\"`Rate`\" pulumi-lang-go=\"`rate`\" pulumi-lang-python=\"`rate`\" pulumi-lang-yaml=\"`rate`\" pulumi-lang-java=\"`rate`\"\u003e`rate`\u003c/span\u003e. Updating a metric of type \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e is not supported. If you would like to see the \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e type returned, contact [Datadog support](https://docs.datadoghq.com/help/).\n"
                },
                "unit": {
                    "type": "string",
                    "description": "Primary unit of the metric such as \u003cspan pulumi-lang-nodejs=\"`byte`\" pulumi-lang-dotnet=\"`Byte`\" pulumi-lang-go=\"`byte`\" pulumi-lang-python=\"`byte`\" pulumi-lang-yaml=\"`byte`\" pulumi-lang-java=\"`byte`\"\u003e`byte`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`operation`\" pulumi-lang-dotnet=\"`Operation`\" pulumi-lang-go=\"`operation`\" pulumi-lang-python=\"`operation`\" pulumi-lang-yaml=\"`operation`\" pulumi-lang-java=\"`operation`\"\u003e`operation`\u003c/span\u003e. For a list of allowed units, refer to [Datadog metric unit documentation](https://docs.datadoghq.com/metrics/units/#unit-list).\n"
                }
            },
            "requiredInputs": [
                "metric"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MetricMetadata resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "A description of the metric.\n"
                    },
                    "metric": {
                        "type": "string",
                        "description": "The name of the metric.\n"
                    },
                    "perUnit": {
                        "type": "string",
                        "description": "Per unit of the metric such as \u003cspan pulumi-lang-nodejs=\"`second`\" pulumi-lang-dotnet=\"`Second`\" pulumi-lang-go=\"`second`\" pulumi-lang-python=\"`second`\" pulumi-lang-yaml=\"`second`\" pulumi-lang-java=\"`second`\"\u003e`second`\u003c/span\u003e in `bytes per second`.\n"
                    },
                    "shortName": {
                        "type": "string",
                        "description": "A short name of the metric.\n"
                    },
                    "statsdInterval": {
                        "type": "integer",
                        "description": "If applicable, statsd flush interval in seconds for the metric.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Metric type such as \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`gauge`\" pulumi-lang-dotnet=\"`Gauge`\" pulumi-lang-go=\"`gauge`\" pulumi-lang-python=\"`gauge`\" pulumi-lang-yaml=\"`gauge`\" pulumi-lang-java=\"`gauge`\"\u003e`gauge`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`rate`\" pulumi-lang-dotnet=\"`Rate`\" pulumi-lang-go=\"`rate`\" pulumi-lang-python=\"`rate`\" pulumi-lang-yaml=\"`rate`\" pulumi-lang-java=\"`rate`\"\u003e`rate`\u003c/span\u003e. Updating a metric of type \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e is not supported. If you would like to see the \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e type returned, contact [Datadog support](https://docs.datadoghq.com/help/).\n"
                    },
                    "unit": {
                        "type": "string",
                        "description": "Primary unit of the metric such as \u003cspan pulumi-lang-nodejs=\"`byte`\" pulumi-lang-dotnet=\"`Byte`\" pulumi-lang-go=\"`byte`\" pulumi-lang-python=\"`byte`\" pulumi-lang-yaml=\"`byte`\" pulumi-lang-java=\"`byte`\"\u003e`byte`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`operation`\" pulumi-lang-dotnet=\"`Operation`\" pulumi-lang-go=\"`operation`\" pulumi-lang-python=\"`operation`\" pulumi-lang-yaml=\"`operation`\" pulumi-lang-java=\"`operation`\"\u003e`operation`\u003c/span\u003e. For a list of allowed units, refer to [Datadog metric unit documentation](https://docs.datadoghq.com/metrics/units/#unit-list).\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/metricTagConfiguration:MetricTagConfiguration": {
            "description": "Provides a Datadog metric tag configuration resource. This can be used to modify tag configurations for metrics.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Manage a tag configuration for a Datadog distribution metric with/without percentiles\nconst exampleDistMetric = new datadog.MetricTagConfiguration(\"example_dist_metric\", {\n    metricName: \"example.terraform.dist.metric\",\n    metricType: \"distribution\",\n    tags: [\n        \"sport\",\n        \"datacenter\",\n    ],\n    includePercentiles: false,\n});\n// Manage tag configurations for a Datadog count or gauge metric\nconst exampleCountMetric = new datadog.MetricTagConfiguration(\"example_count_metric\", {\n    metricName: \"example.terraform.count.metric\",\n    metricType: \"count\",\n    tags: [\n        \"sport\",\n        \"datacenter\",\n    ],\n    excludeTagsMode: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Manage a tag configuration for a Datadog distribution metric with/without percentiles\nexample_dist_metric = datadog.MetricTagConfiguration(\"example_dist_metric\",\n    metric_name=\"example.terraform.dist.metric\",\n    metric_type=\"distribution\",\n    tags=[\n        \"sport\",\n        \"datacenter\",\n    ],\n    include_percentiles=False)\n# Manage tag configurations for a Datadog count or gauge metric\nexample_count_metric = datadog.MetricTagConfiguration(\"example_count_metric\",\n    metric_name=\"example.terraform.count.metric\",\n    metric_type=\"count\",\n    tags=[\n        \"sport\",\n        \"datacenter\",\n    ],\n    exclude_tags_mode=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Manage a tag configuration for a Datadog distribution metric with/without percentiles\n    var exampleDistMetric = new Datadog.MetricTagConfiguration(\"example_dist_metric\", new()\n    {\n        MetricName = \"example.terraform.dist.metric\",\n        MetricType = \"distribution\",\n        Tags = new[]\n        {\n            \"sport\",\n            \"datacenter\",\n        },\n        IncludePercentiles = false,\n    });\n\n    // Manage tag configurations for a Datadog count or gauge metric\n    var exampleCountMetric = new Datadog.MetricTagConfiguration(\"example_count_metric\", new()\n    {\n        MetricName = \"example.terraform.count.metric\",\n        MetricType = \"count\",\n        Tags = new[]\n        {\n            \"sport\",\n            \"datacenter\",\n        },\n        ExcludeTagsMode = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Manage a tag configuration for a Datadog distribution metric with/without percentiles\n\t\t_, err := datadog.NewMetricTagConfiguration(ctx, \"example_dist_metric\", \u0026datadog.MetricTagConfigurationArgs{\n\t\t\tMetricName: pulumi.String(\"example.terraform.dist.metric\"),\n\t\t\tMetricType: pulumi.String(\"distribution\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"sport\"),\n\t\t\t\tpulumi.String(\"datacenter\"),\n\t\t\t},\n\t\t\tIncludePercentiles: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Manage tag configurations for a Datadog count or gauge metric\n\t\t_, err = datadog.NewMetricTagConfiguration(ctx, \"example_count_metric\", \u0026datadog.MetricTagConfigurationArgs{\n\t\t\tMetricName: pulumi.String(\"example.terraform.count.metric\"),\n\t\t\tMetricType: pulumi.String(\"count\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"sport\"),\n\t\t\t\tpulumi.String(\"datacenter\"),\n\t\t\t},\n\t\t\tExcludeTagsMode: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.MetricTagConfiguration;\nimport com.pulumi.datadog.MetricTagConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Manage a tag configuration for a Datadog distribution metric with/without percentiles\n        var exampleDistMetric = new MetricTagConfiguration(\"exampleDistMetric\", MetricTagConfigurationArgs.builder()\n            .metricName(\"example.terraform.dist.metric\")\n            .metricType(\"distribution\")\n            .tags(            \n                \"sport\",\n                \"datacenter\")\n            .includePercentiles(false)\n            .build());\n\n        // Manage tag configurations for a Datadog count or gauge metric\n        var exampleCountMetric = new MetricTagConfiguration(\"exampleCountMetric\", MetricTagConfigurationArgs.builder()\n            .metricName(\"example.terraform.count.metric\")\n            .metricType(\"count\")\n            .tags(            \n                \"sport\",\n                \"datacenter\")\n            .excludeTagsMode(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Manage a tag configuration for a Datadog distribution metric with/without percentiles\n  exampleDistMetric:\n    type: datadog:MetricTagConfiguration\n    name: example_dist_metric\n    properties:\n      metricName: example.terraform.dist.metric\n      metricType: distribution\n      tags:\n        - sport\n        - datacenter\n      includePercentiles: false\n  # Manage tag configurations for a Datadog count or gauge metric\n  exampleCountMetric:\n    type: datadog:MetricTagConfiguration\n    name: example_count_metric\n    properties:\n      metricName: example.terraform.count.metric\n      metricType: count\n      tags:\n        - sport\n        - datacenter\n      excludeTagsMode: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/metricTagConfiguration:MetricTagConfiguration example_dist_metric example.terraform.dist.metric\n```\n\n",
            "properties": {
                "aggregations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MetricTagConfigurationAggregation:MetricTagConfigurationAggregation"
                    },
                    "description": "A list of queryable aggregation combinations for a count, rate, or gauge metric. By default, count and rate metrics require the (time: sum, space: sum) aggregation and gauge metrics require the (time: avg, space: avg) aggregation. Can only be applied to metrics that have a \u003cspan pulumi-lang-nodejs=\"`metricType`\" pulumi-lang-dotnet=\"`MetricType`\" pulumi-lang-go=\"`metricType`\" pulumi-lang-python=\"`metric_type`\" pulumi-lang-yaml=\"`metricType`\" pulumi-lang-java=\"`metricType`\"\u003e`metricType`\u003c/span\u003e of count, rate, or gauge. **Deprecated.** The 'aggregations' field is no longer supported by the Datadog API and will be ignored. This field will be removed in a future version of the provider.\n",
                    "deprecationMessage": "The 'aggregations' field is no longer supported by the Datadog API and will be ignored. This field will be removed in a future version of the provider."
                },
                "excludeTagsMode": {
                    "type": "boolean",
                    "description": "Toggle to include/exclude tags as queryable for your metric. Can only be applied to metrics that have one or more tags configured. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "includePercentiles": {
                    "type": "boolean",
                    "description": "Toggle to include/exclude percentiles for a distribution metric. Defaults to false. Can only be applied to metrics that have a \u003cspan pulumi-lang-nodejs=\"`metricType`\" pulumi-lang-dotnet=\"`MetricType`\" pulumi-lang-go=\"`metricType`\" pulumi-lang-python=\"`metric_type`\" pulumi-lang-yaml=\"`metricType`\" pulumi-lang-java=\"`metricType`\"\u003e`metricType`\u003c/span\u003e of distribution.\n"
                },
                "metricName": {
                    "type": "string",
                    "description": "The metric name for this resource.\n"
                },
                "metricType": {
                    "type": "string",
                    "description": "The metric's type. This field can't be updated after creation. Valid values are \u003cspan pulumi-lang-nodejs=\"`gauge`\" pulumi-lang-dotnet=\"`Gauge`\" pulumi-lang-go=\"`gauge`\" pulumi-lang-python=\"`gauge`\" pulumi-lang-yaml=\"`gauge`\" pulumi-lang-java=\"`gauge`\"\u003e`gauge`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rate`\" pulumi-lang-dotnet=\"`Rate`\" pulumi-lang-go=\"`rate`\" pulumi-lang-python=\"`rate`\" pulumi-lang-yaml=\"`rate`\" pulumi-lang-java=\"`rate`\"\u003e`rate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag keys that will be queryable for your metric.\n"
                }
            },
            "required": [
                "aggregations",
                "metricName",
                "metricType",
                "tags"
            ],
            "inputProperties": {
                "aggregations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MetricTagConfigurationAggregation:MetricTagConfigurationAggregation"
                    },
                    "description": "A list of queryable aggregation combinations for a count, rate, or gauge metric. By default, count and rate metrics require the (time: sum, space: sum) aggregation and gauge metrics require the (time: avg, space: avg) aggregation. Can only be applied to metrics that have a \u003cspan pulumi-lang-nodejs=\"`metricType`\" pulumi-lang-dotnet=\"`MetricType`\" pulumi-lang-go=\"`metricType`\" pulumi-lang-python=\"`metric_type`\" pulumi-lang-yaml=\"`metricType`\" pulumi-lang-java=\"`metricType`\"\u003e`metricType`\u003c/span\u003e of count, rate, or gauge. **Deprecated.** The 'aggregations' field is no longer supported by the Datadog API and will be ignored. This field will be removed in a future version of the provider.\n",
                    "deprecationMessage": "The 'aggregations' field is no longer supported by the Datadog API and will be ignored. This field will be removed in a future version of the provider."
                },
                "excludeTagsMode": {
                    "type": "boolean",
                    "description": "Toggle to include/exclude tags as queryable for your metric. Can only be applied to metrics that have one or more tags configured. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "includePercentiles": {
                    "type": "boolean",
                    "description": "Toggle to include/exclude percentiles for a distribution metric. Defaults to false. Can only be applied to metrics that have a \u003cspan pulumi-lang-nodejs=\"`metricType`\" pulumi-lang-dotnet=\"`MetricType`\" pulumi-lang-go=\"`metricType`\" pulumi-lang-python=\"`metric_type`\" pulumi-lang-yaml=\"`metricType`\" pulumi-lang-java=\"`metricType`\"\u003e`metricType`\u003c/span\u003e of distribution.\n"
                },
                "metricName": {
                    "type": "string",
                    "description": "The metric name for this resource.\n",
                    "willReplaceOnChanges": true
                },
                "metricType": {
                    "type": "string",
                    "description": "The metric's type. This field can't be updated after creation. Valid values are \u003cspan pulumi-lang-nodejs=\"`gauge`\" pulumi-lang-dotnet=\"`Gauge`\" pulumi-lang-go=\"`gauge`\" pulumi-lang-python=\"`gauge`\" pulumi-lang-yaml=\"`gauge`\" pulumi-lang-java=\"`gauge`\"\u003e`gauge`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rate`\" pulumi-lang-dotnet=\"`Rate`\" pulumi-lang-go=\"`rate`\" pulumi-lang-python=\"`rate`\" pulumi-lang-yaml=\"`rate`\" pulumi-lang-java=\"`rate`\"\u003e`rate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e.\n",
                    "willReplaceOnChanges": true
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tag keys that will be queryable for your metric.\n"
                }
            },
            "requiredInputs": [
                "metricName",
                "metricType",
                "tags"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MetricTagConfiguration resources.\n",
                "properties": {
                    "aggregations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/MetricTagConfigurationAggregation:MetricTagConfigurationAggregation"
                        },
                        "description": "A list of queryable aggregation combinations for a count, rate, or gauge metric. By default, count and rate metrics require the (time: sum, space: sum) aggregation and gauge metrics require the (time: avg, space: avg) aggregation. Can only be applied to metrics that have a \u003cspan pulumi-lang-nodejs=\"`metricType`\" pulumi-lang-dotnet=\"`MetricType`\" pulumi-lang-go=\"`metricType`\" pulumi-lang-python=\"`metric_type`\" pulumi-lang-yaml=\"`metricType`\" pulumi-lang-java=\"`metricType`\"\u003e`metricType`\u003c/span\u003e of count, rate, or gauge. **Deprecated.** The 'aggregations' field is no longer supported by the Datadog API and will be ignored. This field will be removed in a future version of the provider.\n",
                        "deprecationMessage": "The 'aggregations' field is no longer supported by the Datadog API and will be ignored. This field will be removed in a future version of the provider."
                    },
                    "excludeTagsMode": {
                        "type": "boolean",
                        "description": "Toggle to include/exclude tags as queryable for your metric. Can only be applied to metrics that have one or more tags configured. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "includePercentiles": {
                        "type": "boolean",
                        "description": "Toggle to include/exclude percentiles for a distribution metric. Defaults to false. Can only be applied to metrics that have a \u003cspan pulumi-lang-nodejs=\"`metricType`\" pulumi-lang-dotnet=\"`MetricType`\" pulumi-lang-go=\"`metricType`\" pulumi-lang-python=\"`metric_type`\" pulumi-lang-yaml=\"`metricType`\" pulumi-lang-java=\"`metricType`\"\u003e`metricType`\u003c/span\u003e of distribution.\n"
                    },
                    "metricName": {
                        "type": "string",
                        "description": "The metric name for this resource.\n",
                        "willReplaceOnChanges": true
                    },
                    "metricType": {
                        "type": "string",
                        "description": "The metric's type. This field can't be updated after creation. Valid values are \u003cspan pulumi-lang-nodejs=\"`gauge`\" pulumi-lang-dotnet=\"`Gauge`\" pulumi-lang-go=\"`gauge`\" pulumi-lang-python=\"`gauge`\" pulumi-lang-yaml=\"`gauge`\" pulumi-lang-java=\"`gauge`\"\u003e`gauge`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rate`\" pulumi-lang-dotnet=\"`Rate`\" pulumi-lang-go=\"`rate`\" pulumi-lang-python=\"`rate`\" pulumi-lang-yaml=\"`rate`\" pulumi-lang-java=\"`rate`\"\u003e`rate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`distribution`\" pulumi-lang-dotnet=\"`Distribution`\" pulumi-lang-go=\"`distribution`\" pulumi-lang-python=\"`distribution`\" pulumi-lang-yaml=\"`distribution`\" pulumi-lang-java=\"`distribution`\"\u003e`distribution`\u003c/span\u003e.\n",
                        "willReplaceOnChanges": true
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of tag keys that will be queryable for your metric.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/monitor:Monitor": {
            "description": "Provides a Datadog monitor resource. This can be used to create and manage Datadog monitors.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst foo = new datadog.Monitor(\"foo\", {\n    name: \"Name for monitor foo\",\n    type: \"metric alert\",\n    message: \"Monitor triggered. Notify: @hipchat-channel\",\n    escalationMessage: \"Escalation message @pagerduty\",\n    query: \"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 4\",\n    monitorThresholds: {\n        warning: \"2\",\n        critical: \"4\",\n    },\n    includeTags: true,\n    tags: [\n        \"foo:bar\",\n        \"team:fooBar\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nfoo = datadog.Monitor(\"foo\",\n    name=\"Name for monitor foo\",\n    type=\"metric alert\",\n    message=\"Monitor triggered. Notify: @hipchat-channel\",\n    escalation_message=\"Escalation message @pagerduty\",\n    query=\"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 4\",\n    monitor_thresholds={\n        \"warning\": \"2\",\n        \"critical\": \"4\",\n    },\n    include_tags=True,\n    tags=[\n        \"foo:bar\",\n        \"team:fooBar\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var foo = new Datadog.Monitor(\"foo\", new()\n    {\n        Name = \"Name for monitor foo\",\n        Type = \"metric alert\",\n        Message = \"Monitor triggered. Notify: @hipchat-channel\",\n        EscalationMessage = \"Escalation message @pagerduty\",\n        Query = \"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 4\",\n        MonitorThresholds = new Datadog.Inputs.MonitorMonitorThresholdsArgs\n        {\n            Warning = \"2\",\n            Critical = \"4\",\n        },\n        IncludeTags = true,\n        Tags = new[]\n        {\n            \"foo:bar\",\n            \"team:fooBar\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewMonitor(ctx, \"foo\", \u0026datadog.MonitorArgs{\n\t\t\tName:              pulumi.String(\"Name for monitor foo\"),\n\t\t\tType:              pulumi.String(\"metric alert\"),\n\t\t\tMessage:           pulumi.String(\"Monitor triggered. Notify: @hipchat-channel\"),\n\t\t\tEscalationMessage: pulumi.String(\"Escalation message @pagerduty\"),\n\t\t\tQuery:             pulumi.String(\"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 4\"),\n\t\t\tMonitorThresholds: \u0026datadog.MonitorMonitorThresholdsArgs{\n\t\t\t\tWarning:  pulumi.String(\"2\"),\n\t\t\t\tCritical: pulumi.String(\"4\"),\n\t\t\t},\n\t\t\tIncludeTags: pulumi.Bool(true),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"foo:bar\"),\n\t\t\t\tpulumi.String(\"team:fooBar\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Monitor;\nimport com.pulumi.datadog.MonitorArgs;\nimport com.pulumi.datadog.inputs.MonitorMonitorThresholdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var foo = new Monitor(\"foo\", MonitorArgs.builder()\n            .name(\"Name for monitor foo\")\n            .type(\"metric alert\")\n            .message(\"Monitor triggered. Notify: @hipchat-channel\")\n            .escalationMessage(\"Escalation message @pagerduty\")\n            .query(\"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 4\")\n            .monitorThresholds(MonitorMonitorThresholdsArgs.builder()\n                .warning(\"2\")\n                .critical(\"4\")\n                .build())\n            .includeTags(true)\n            .tags(            \n                \"foo:bar\",\n                \"team:fooBar\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  foo:\n    type: datadog:Monitor\n    properties:\n      name: Name for monitor foo\n      type: metric alert\n      message: 'Monitor triggered. Notify: @hipchat-channel'\n      escalationMessage: Escalation message @pagerduty\n      query: avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 4\n      monitorThresholds:\n        warning: 2\n        critical: 4\n      includeTags: true\n      tags:\n        - foo:bar\n        - team:fooBar\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/monitor:Monitor bytes_received_localhost 2081\n```\n\n",
            "properties": {
                "assets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MonitorAsset:MonitorAsset"
                    },
                    "description": "List of monitor assets (for example, runbooks, dashboards, workflows) tied to this monitor."
                },
                "draftStatus": {
                    "type": "string",
                    "description": "Indicates whether the monitor is in a draft or published state. When set to \u003cspan pulumi-lang-nodejs=\"`draft`\" pulumi-lang-dotnet=\"`Draft`\" pulumi-lang-go=\"`draft`\" pulumi-lang-python=\"`draft`\" pulumi-lang-yaml=\"`draft`\" pulumi-lang-java=\"`draft`\"\u003e`draft`\u003c/span\u003e, the monitor appears as Draft and does not send notifications. When set to \u003cspan pulumi-lang-nodejs=\"`published`\" pulumi-lang-dotnet=\"`Published`\" pulumi-lang-go=\"`published`\" pulumi-lang-python=\"`published`\" pulumi-lang-yaml=\"`published`\" pulumi-lang-java=\"`published`\"\u003e`published`\u003c/span\u003e, the monitor is active, and it evaluates conditions and sends notifications as configured."
                },
                "enableLogsSample": {
                    "type": "boolean",
                    "description": "A boolean indicating whether or not to include a list of log values which triggered the alert. This is only used by log monitors. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                },
                "enableSamples": {
                    "type": "boolean",
                    "description": "Whether or not a list of samples which triggered the alert is included. This is only used by CI Test and Pipeline monitors."
                },
                "escalationMessage": {
                    "type": "string",
                    "description": "A message to include with a re-notification. Supports the `@username` notification allowed elsewhere."
                },
                "evaluationDelay": {
                    "type": "integer",
                    "description": "(Only applies to metric alert) Time (in seconds) to delay evaluation, as a non-negative integer.\n\nFor example, if the value is set to \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e (5min), the \u003cspan pulumi-lang-nodejs=\"`timeframe`\" pulumi-lang-dotnet=\"`Timeframe`\" pulumi-lang-go=\"`timeframe`\" pulumi-lang-python=\"`timeframe`\" pulumi-lang-yaml=\"`timeframe`\" pulumi-lang-java=\"`timeframe`\"\u003e`timeframe`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`last5m`\" pulumi-lang-dotnet=\"`Last5m`\" pulumi-lang-go=\"`last5m`\" pulumi-lang-python=\"`last_5m`\" pulumi-lang-yaml=\"`last5m`\" pulumi-lang-java=\"`last5m`\"\u003e`last5m`\u003c/span\u003e and the time is 7:00, the monitor will evaluate data from 6:50 to 6:55. This is useful for AWS CloudWatch and other backfilled metrics to ensure the monitor will always have data during evaluation."
                },
                "forceDelete": {
                    "type": "boolean",
                    "description": "A boolean indicating whether this monitor can be deleted even if it’s referenced by other resources (e.g. SLO, composite monitor)."
                },
                "groupRetentionDuration": {
                    "type": "string",
                    "description": "The time span after which groups with missing data are dropped from the monitor state. The minimum value is one hour, and the maximum value is 72 hours. Example values are: 60m, 1h, and 2d. This option is only available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors."
                },
                "groupbySimpleMonitor": {
                    "type": "boolean",
                    "description": "Whether or not to trigger one alert if any source breaches a threshold. This is only used by log monitors. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                },
                "includeTags": {
                    "type": "boolean",
                    "description": "A boolean indicating whether notifications from this monitor automatically insert its triggering tags into the title."
                },
                "message": {
                    "type": "string",
                    "description": "A message to include with notifications for this monitor.\n"
                },
                "monitorThresholdWindows": {
                    "$ref": "#/types/datadog:index/MonitorMonitorThresholdWindows:MonitorMonitorThresholdWindows",
                    "description": "A mapping containing \u003cspan pulumi-lang-nodejs=\"`recoveryWindow`\" pulumi-lang-dotnet=\"`RecoveryWindow`\" pulumi-lang-go=\"`recoveryWindow`\" pulumi-lang-python=\"`recovery_window`\" pulumi-lang-yaml=\"`recoveryWindow`\" pulumi-lang-java=\"`recoveryWindow`\"\u003e`recoveryWindow`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`triggerWindow`\" pulumi-lang-dotnet=\"`TriggerWindow`\" pulumi-lang-go=\"`triggerWindow`\" pulumi-lang-python=\"`trigger_window`\" pulumi-lang-yaml=\"`triggerWindow`\" pulumi-lang-java=\"`triggerWindow`\"\u003e`triggerWindow`\u003c/span\u003e values, e.g. \u003cspan pulumi-lang-nodejs=\"`last15m`\" pulumi-lang-dotnet=\"`Last15m`\" pulumi-lang-go=\"`last15m`\" pulumi-lang-python=\"`last_15m`\" pulumi-lang-yaml=\"`last15m`\" pulumi-lang-java=\"`last15m`\"\u003e`last15m`\u003c/span\u003e . Can only be used for, and are required for, anomaly monitors."
                },
                "monitorThresholds": {
                    "$ref": "#/types/datadog:index/MonitorMonitorThresholds:MonitorMonitorThresholds",
                    "description": "Alert thresholds of the monitor."
                },
                "name": {
                    "type": "string",
                    "description": "Name of Datadog monitor."
                },
                "newGroupDelay": {
                    "type": "integer",
                    "description": "The time (in seconds) to skip evaluations for new groups.\n\n\u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e overrides \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e if it is set to a nonzero value."
                },
                "newHostDelay": {
                    "type": "integer",
                    "description": "**Deprecated**. See \u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e. Time (in seconds) to allow a host to boot and applications to fully start before starting the evaluation of monitor results. Should be a non-negative integer. This value is ignored for simple monitors and monitors not grouped by host. The only case when this should be used is to override the default and set \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e to zero for monitors grouped by host.",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e except when setting \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e to zero."
                },
                "noDataTimeframe": {
                    "type": "integer",
                    "description": "The number of minutes before a monitor will notify when data stops reporting.\n\nWe recommend at least 2x the monitor timeframe for metric alerts or 2 minutes for service checks."
                },
                "notificationPresetName": {
                    "type": "string",
                    "description": "Toggles the display of additional content sent in the monitor notification."
                },
                "notifyAudit": {
                    "type": "boolean",
                    "description": "A boolean indicating whether tagged users will be notified on changes to this monitor. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                },
                "notifyBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Controls what granularity a monitor alerts on. Only available for monitors with groupings. For instance, a monitor grouped by \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`namespace`\" pulumi-lang-dotnet=\"`Namespace`\" pulumi-lang-go=\"`namespace`\" pulumi-lang-python=\"`namespace`\" pulumi-lang-yaml=\"`namespace`\" pulumi-lang-java=\"`namespace`\"\u003e`namespace`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`pod`\" pulumi-lang-dotnet=\"`Pod`\" pulumi-lang-go=\"`pod`\" pulumi-lang-python=\"`pod`\" pulumi-lang-yaml=\"`pod`\" pulumi-lang-java=\"`pod`\"\u003e`pod`\u003c/span\u003e can be configured to only notify on each new \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e violating the alert conditions by setting \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e to `['cluster']`. Tags mentioned in \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e must be a subset of the grouping tags in the query. For example, a query grouped by \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`namespace`\" pulumi-lang-dotnet=\"`Namespace`\" pulumi-lang-go=\"`namespace`\" pulumi-lang-python=\"`namespace`\" pulumi-lang-yaml=\"`namespace`\" pulumi-lang-java=\"`namespace`\"\u003e`namespace`\u003c/span\u003e cannot notify on \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e. Setting \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e to `[*]` configures the monitor to notify as a simple-alert."
                },
                "notifyNoData": {
                    "type": "boolean",
                    "description": "A boolean indicating whether this monitor will notify when data stops reporting."
                },
                "onMissingData": {
                    "type": "string",
                    "description": "Controls how groups or monitors are treated if an evaluation does not return any data points. The default option results in different behavior depending on the monitor query type. For monitors using `Count` queries, an empty monitor evaluation is treated as 0 and is compared to the threshold conditions. For monitors using any query type other than `Count`, for example `Gauge`, `Measure`, or `Rate`, the monitor shows the last known status. This option is not available for Service Check, Composite, or SLO monitors. Valid values are: \u003cspan pulumi-lang-nodejs=\"`showNoData`\" pulumi-lang-dotnet=\"`ShowNoData`\" pulumi-lang-go=\"`showNoData`\" pulumi-lang-python=\"`show_no_data`\" pulumi-lang-yaml=\"`showNoData`\" pulumi-lang-java=\"`showNoData`\"\u003e`showNoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`showAndNotifyNoData`\" pulumi-lang-dotnet=\"`ShowAndNotifyNoData`\" pulumi-lang-go=\"`showAndNotifyNoData`\" pulumi-lang-python=\"`show_and_notify_no_data`\" pulumi-lang-yaml=\"`showAndNotifyNoData`\" pulumi-lang-java=\"`showAndNotifyNoData`\"\u003e`showAndNotifyNoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`resolve`\" pulumi-lang-dotnet=\"`Resolve`\" pulumi-lang-go=\"`resolve`\" pulumi-lang-python=\"`resolve`\" pulumi-lang-yaml=\"`resolve`\" pulumi-lang-java=\"`resolve`\"\u003e`resolve`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e."
                },
                "priority": {
                    "type": "string",
                    "description": "Integer from 1 (high) to 5 (low) indicating alert severity."
                },
                "query": {
                    "type": "string",
                    "description": "The monitor query to notify on. Note this is not the same query you see in the UI and the syntax is different depending on the monitor type, please see the [API Reference](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor) for details. `terraform plan` will validate query contents unless \u003cspan pulumi-lang-nodejs=\"`validate`\" pulumi-lang-dotnet=\"`Validate`\" pulumi-lang-go=\"`validate`\" pulumi-lang-python=\"`validate`\" pulumi-lang-yaml=\"`validate`\" pulumi-lang-java=\"`validate`\"\u003e`validate`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n\n**Note:** APM latency data is now available as Distribution Metrics. Existing monitors have been migrated automatically but all terraformed monitors can still use the existing metrics. We strongly recommend updating monitor definitions to query the new metrics. To learn more, or to see examples of how to update your terraform definitions to utilize the new distribution metrics, see the [detailed doc](https://docs.datadoghq.com/tracing/guide/ddsketch_trace_metrics/)."
                },
                "renotifyInterval": {
                    "type": "integer",
                    "description": "The number of minutes after the last notification before a monitor will re-notify on the current status. It will only re-notify if it's not resolved."
                },
                "renotifyOccurrences": {
                    "type": "integer",
                    "description": "The number of re-notification messages that should be sent on the current status."
                },
                "renotifyStatuses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The types of statuses for which re-notification messages should be sent."
                },
                "requireFullWindow": {
                    "type": "boolean",
                    "description": "A boolean indicating whether this monitor needs a full window of data before it's evaluated. Datadog strongly recommends you set this to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e for sparse metrics, otherwise some evaluations may be skipped. If there's a\u003cspan pulumi-lang-nodejs=\" customSchedule \" pulumi-lang-dotnet=\" CustomSchedule \" pulumi-lang-go=\" customSchedule \" pulumi-lang-python=\" custom_schedule \" pulumi-lang-yaml=\" customSchedule \" pulumi-lang-java=\" customSchedule \"\u003e customSchedule \u003c/span\u003eset, \u003cspan pulumi-lang-nodejs=\"`requireFullWindow`\" pulumi-lang-dotnet=\"`RequireFullWindow`\" pulumi-lang-go=\"`requireFullWindow`\" pulumi-lang-python=\"`require_full_window`\" pulumi-lang-yaml=\"`requireFullWindow`\" pulumi-lang-java=\"`requireFullWindow`\"\u003e`requireFullWindow`\u003c/span\u003e must be false and will be ignored."
                },
                "restrictedRoles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of unique role identifiers to define which roles are allowed to edit the monitor. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. Roles unique identifiers can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles/#list-roles) in the `data.id` field.",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e resource to manage permission."
                },
                "schedulingOptions": {
                    "$ref": "#/types/datadog:index/MonitorSchedulingOptions:MonitorSchedulingOptions",
                    "description": "Configuration options for scheduling."
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags to associate with your monitor. This can help you categorize and filter monitors in the manage monitors page of the UI. Note: it's not currently possible to filter by these tags when querying via the API"
                },
                "timeoutH": {
                    "type": "integer",
                    "description": "The number of hours of the monitor not reporting data before it automatically resolves from a triggered state. The minimum allowed value is 0 hours. The maximum allowed value is 24 hours."
                },
                "type": {
                    "type": "string",
                    "description": "The type of the monitor. The mapping from these types to the types found in the Datadog Web UI can be found in the Datadog API [documentation page](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor). Note: The monitor type cannot be changed after a monitor is created."
                },
                "validate": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skip the validation call done during plan."
                },
                "variables": {
                    "$ref": "#/types/datadog:index/MonitorVariables:MonitorVariables"
                }
            },
            "required": [
                "evaluationDelay",
                "message",
                "name",
                "query",
                "restrictedRoles",
                "tags",
                "type"
            ],
            "inputProperties": {
                "assets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/MonitorAsset:MonitorAsset"
                    },
                    "description": "List of monitor assets (for example, runbooks, dashboards, workflows) tied to this monitor."
                },
                "draftStatus": {
                    "type": "string",
                    "description": "Indicates whether the monitor is in a draft or published state. When set to \u003cspan pulumi-lang-nodejs=\"`draft`\" pulumi-lang-dotnet=\"`Draft`\" pulumi-lang-go=\"`draft`\" pulumi-lang-python=\"`draft`\" pulumi-lang-yaml=\"`draft`\" pulumi-lang-java=\"`draft`\"\u003e`draft`\u003c/span\u003e, the monitor appears as Draft and does not send notifications. When set to \u003cspan pulumi-lang-nodejs=\"`published`\" pulumi-lang-dotnet=\"`Published`\" pulumi-lang-go=\"`published`\" pulumi-lang-python=\"`published`\" pulumi-lang-yaml=\"`published`\" pulumi-lang-java=\"`published`\"\u003e`published`\u003c/span\u003e, the monitor is active, and it evaluates conditions and sends notifications as configured."
                },
                "enableLogsSample": {
                    "type": "boolean",
                    "description": "A boolean indicating whether or not to include a list of log values which triggered the alert. This is only used by log monitors. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                },
                "enableSamples": {
                    "type": "boolean",
                    "description": "Whether or not a list of samples which triggered the alert is included. This is only used by CI Test and Pipeline monitors."
                },
                "escalationMessage": {
                    "type": "string",
                    "description": "A message to include with a re-notification. Supports the `@username` notification allowed elsewhere."
                },
                "evaluationDelay": {
                    "type": "integer",
                    "description": "(Only applies to metric alert) Time (in seconds) to delay evaluation, as a non-negative integer.\n\nFor example, if the value is set to \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e (5min), the \u003cspan pulumi-lang-nodejs=\"`timeframe`\" pulumi-lang-dotnet=\"`Timeframe`\" pulumi-lang-go=\"`timeframe`\" pulumi-lang-python=\"`timeframe`\" pulumi-lang-yaml=\"`timeframe`\" pulumi-lang-java=\"`timeframe`\"\u003e`timeframe`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`last5m`\" pulumi-lang-dotnet=\"`Last5m`\" pulumi-lang-go=\"`last5m`\" pulumi-lang-python=\"`last_5m`\" pulumi-lang-yaml=\"`last5m`\" pulumi-lang-java=\"`last5m`\"\u003e`last5m`\u003c/span\u003e and the time is 7:00, the monitor will evaluate data from 6:50 to 6:55. This is useful for AWS CloudWatch and other backfilled metrics to ensure the monitor will always have data during evaluation."
                },
                "forceDelete": {
                    "type": "boolean",
                    "description": "A boolean indicating whether this monitor can be deleted even if it’s referenced by other resources (e.g. SLO, composite monitor)."
                },
                "groupRetentionDuration": {
                    "type": "string",
                    "description": "The time span after which groups with missing data are dropped from the monitor state. The minimum value is one hour, and the maximum value is 72 hours. Example values are: 60m, 1h, and 2d. This option is only available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors."
                },
                "groupbySimpleMonitor": {
                    "type": "boolean",
                    "description": "Whether or not to trigger one alert if any source breaches a threshold. This is only used by log monitors. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                },
                "includeTags": {
                    "type": "boolean",
                    "description": "A boolean indicating whether notifications from this monitor automatically insert its triggering tags into the title."
                },
                "message": {
                    "type": "string",
                    "description": "A message to include with notifications for this monitor.\n"
                },
                "monitorThresholdWindows": {
                    "$ref": "#/types/datadog:index/MonitorMonitorThresholdWindows:MonitorMonitorThresholdWindows",
                    "description": "A mapping containing \u003cspan pulumi-lang-nodejs=\"`recoveryWindow`\" pulumi-lang-dotnet=\"`RecoveryWindow`\" pulumi-lang-go=\"`recoveryWindow`\" pulumi-lang-python=\"`recovery_window`\" pulumi-lang-yaml=\"`recoveryWindow`\" pulumi-lang-java=\"`recoveryWindow`\"\u003e`recoveryWindow`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`triggerWindow`\" pulumi-lang-dotnet=\"`TriggerWindow`\" pulumi-lang-go=\"`triggerWindow`\" pulumi-lang-python=\"`trigger_window`\" pulumi-lang-yaml=\"`triggerWindow`\" pulumi-lang-java=\"`triggerWindow`\"\u003e`triggerWindow`\u003c/span\u003e values, e.g. \u003cspan pulumi-lang-nodejs=\"`last15m`\" pulumi-lang-dotnet=\"`Last15m`\" pulumi-lang-go=\"`last15m`\" pulumi-lang-python=\"`last_15m`\" pulumi-lang-yaml=\"`last15m`\" pulumi-lang-java=\"`last15m`\"\u003e`last15m`\u003c/span\u003e . Can only be used for, and are required for, anomaly monitors."
                },
                "monitorThresholds": {
                    "$ref": "#/types/datadog:index/MonitorMonitorThresholds:MonitorMonitorThresholds",
                    "description": "Alert thresholds of the monitor."
                },
                "name": {
                    "type": "string",
                    "description": "Name of Datadog monitor."
                },
                "newGroupDelay": {
                    "type": "integer",
                    "description": "The time (in seconds) to skip evaluations for new groups.\n\n\u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e overrides \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e if it is set to a nonzero value."
                },
                "newHostDelay": {
                    "type": "integer",
                    "description": "**Deprecated**. See \u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e. Time (in seconds) to allow a host to boot and applications to fully start before starting the evaluation of monitor results. Should be a non-negative integer. This value is ignored for simple monitors and monitors not grouped by host. The only case when this should be used is to override the default and set \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e to zero for monitors grouped by host.",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e except when setting \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e to zero."
                },
                "noDataTimeframe": {
                    "type": "integer",
                    "description": "The number of minutes before a monitor will notify when data stops reporting.\n\nWe recommend at least 2x the monitor timeframe for metric alerts or 2 minutes for service checks."
                },
                "notificationPresetName": {
                    "type": "string",
                    "description": "Toggles the display of additional content sent in the monitor notification."
                },
                "notifyAudit": {
                    "type": "boolean",
                    "description": "A boolean indicating whether tagged users will be notified on changes to this monitor. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                },
                "notifyBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Controls what granularity a monitor alerts on. Only available for monitors with groupings. For instance, a monitor grouped by \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`namespace`\" pulumi-lang-dotnet=\"`Namespace`\" pulumi-lang-go=\"`namespace`\" pulumi-lang-python=\"`namespace`\" pulumi-lang-yaml=\"`namespace`\" pulumi-lang-java=\"`namespace`\"\u003e`namespace`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`pod`\" pulumi-lang-dotnet=\"`Pod`\" pulumi-lang-go=\"`pod`\" pulumi-lang-python=\"`pod`\" pulumi-lang-yaml=\"`pod`\" pulumi-lang-java=\"`pod`\"\u003e`pod`\u003c/span\u003e can be configured to only notify on each new \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e violating the alert conditions by setting \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e to `['cluster']`. Tags mentioned in \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e must be a subset of the grouping tags in the query. For example, a query grouped by \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`namespace`\" pulumi-lang-dotnet=\"`Namespace`\" pulumi-lang-go=\"`namespace`\" pulumi-lang-python=\"`namespace`\" pulumi-lang-yaml=\"`namespace`\" pulumi-lang-java=\"`namespace`\"\u003e`namespace`\u003c/span\u003e cannot notify on \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e. Setting \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e to `[*]` configures the monitor to notify as a simple-alert."
                },
                "notifyNoData": {
                    "type": "boolean",
                    "description": "A boolean indicating whether this monitor will notify when data stops reporting."
                },
                "onMissingData": {
                    "type": "string",
                    "description": "Controls how groups or monitors are treated if an evaluation does not return any data points. The default option results in different behavior depending on the monitor query type. For monitors using `Count` queries, an empty monitor evaluation is treated as 0 and is compared to the threshold conditions. For monitors using any query type other than `Count`, for example `Gauge`, `Measure`, or `Rate`, the monitor shows the last known status. This option is not available for Service Check, Composite, or SLO monitors. Valid values are: \u003cspan pulumi-lang-nodejs=\"`showNoData`\" pulumi-lang-dotnet=\"`ShowNoData`\" pulumi-lang-go=\"`showNoData`\" pulumi-lang-python=\"`show_no_data`\" pulumi-lang-yaml=\"`showNoData`\" pulumi-lang-java=\"`showNoData`\"\u003e`showNoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`showAndNotifyNoData`\" pulumi-lang-dotnet=\"`ShowAndNotifyNoData`\" pulumi-lang-go=\"`showAndNotifyNoData`\" pulumi-lang-python=\"`show_and_notify_no_data`\" pulumi-lang-yaml=\"`showAndNotifyNoData`\" pulumi-lang-java=\"`showAndNotifyNoData`\"\u003e`showAndNotifyNoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`resolve`\" pulumi-lang-dotnet=\"`Resolve`\" pulumi-lang-go=\"`resolve`\" pulumi-lang-python=\"`resolve`\" pulumi-lang-yaml=\"`resolve`\" pulumi-lang-java=\"`resolve`\"\u003e`resolve`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e."
                },
                "priority": {
                    "type": "string",
                    "description": "Integer from 1 (high) to 5 (low) indicating alert severity."
                },
                "query": {
                    "type": "string",
                    "description": "The monitor query to notify on. Note this is not the same query you see in the UI and the syntax is different depending on the monitor type, please see the [API Reference](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor) for details. `terraform plan` will validate query contents unless \u003cspan pulumi-lang-nodejs=\"`validate`\" pulumi-lang-dotnet=\"`Validate`\" pulumi-lang-go=\"`validate`\" pulumi-lang-python=\"`validate`\" pulumi-lang-yaml=\"`validate`\" pulumi-lang-java=\"`validate`\"\u003e`validate`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n\n**Note:** APM latency data is now available as Distribution Metrics. Existing monitors have been migrated automatically but all terraformed monitors can still use the existing metrics. We strongly recommend updating monitor definitions to query the new metrics. To learn more, or to see examples of how to update your terraform definitions to utilize the new distribution metrics, see the [detailed doc](https://docs.datadoghq.com/tracing/guide/ddsketch_trace_metrics/)."
                },
                "renotifyInterval": {
                    "type": "integer",
                    "description": "The number of minutes after the last notification before a monitor will re-notify on the current status. It will only re-notify if it's not resolved."
                },
                "renotifyOccurrences": {
                    "type": "integer",
                    "description": "The number of re-notification messages that should be sent on the current status."
                },
                "renotifyStatuses": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The types of statuses for which re-notification messages should be sent."
                },
                "requireFullWindow": {
                    "type": "boolean",
                    "description": "A boolean indicating whether this monitor needs a full window of data before it's evaluated. Datadog strongly recommends you set this to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e for sparse metrics, otherwise some evaluations may be skipped. If there's a\u003cspan pulumi-lang-nodejs=\" customSchedule \" pulumi-lang-dotnet=\" CustomSchedule \" pulumi-lang-go=\" customSchedule \" pulumi-lang-python=\" custom_schedule \" pulumi-lang-yaml=\" customSchedule \" pulumi-lang-java=\" customSchedule \"\u003e customSchedule \u003c/span\u003eset, \u003cspan pulumi-lang-nodejs=\"`requireFullWindow`\" pulumi-lang-dotnet=\"`RequireFullWindow`\" pulumi-lang-go=\"`requireFullWindow`\" pulumi-lang-python=\"`require_full_window`\" pulumi-lang-yaml=\"`requireFullWindow`\" pulumi-lang-java=\"`requireFullWindow`\"\u003e`requireFullWindow`\u003c/span\u003e must be false and will be ignored."
                },
                "restrictedRoles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of unique role identifiers to define which roles are allowed to edit the monitor. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. Roles unique identifiers can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles/#list-roles) in the `data.id` field.",
                    "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e resource to manage permission."
                },
                "schedulingOptions": {
                    "$ref": "#/types/datadog:index/MonitorSchedulingOptions:MonitorSchedulingOptions",
                    "description": "Configuration options for scheduling."
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags to associate with your monitor. This can help you categorize and filter monitors in the manage monitors page of the UI. Note: it's not currently possible to filter by these tags when querying via the API"
                },
                "timeoutH": {
                    "type": "integer",
                    "description": "The number of hours of the monitor not reporting data before it automatically resolves from a triggered state. The minimum allowed value is 0 hours. The maximum allowed value is 24 hours."
                },
                "type": {
                    "type": "string",
                    "description": "The type of the monitor. The mapping from these types to the types found in the Datadog Web UI can be found in the Datadog API [documentation page](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor). Note: The monitor type cannot be changed after a monitor is created.",
                    "willReplaceOnChanges": true
                },
                "validate": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skip the validation call done during plan."
                },
                "variables": {
                    "$ref": "#/types/datadog:index/MonitorVariables:MonitorVariables"
                }
            },
            "requiredInputs": [
                "message",
                "name",
                "query",
                "type"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Monitor resources.\n",
                "properties": {
                    "assets": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/MonitorAsset:MonitorAsset"
                        },
                        "description": "List of monitor assets (for example, runbooks, dashboards, workflows) tied to this monitor."
                    },
                    "draftStatus": {
                        "type": "string",
                        "description": "Indicates whether the monitor is in a draft or published state. When set to \u003cspan pulumi-lang-nodejs=\"`draft`\" pulumi-lang-dotnet=\"`Draft`\" pulumi-lang-go=\"`draft`\" pulumi-lang-python=\"`draft`\" pulumi-lang-yaml=\"`draft`\" pulumi-lang-java=\"`draft`\"\u003e`draft`\u003c/span\u003e, the monitor appears as Draft and does not send notifications. When set to \u003cspan pulumi-lang-nodejs=\"`published`\" pulumi-lang-dotnet=\"`Published`\" pulumi-lang-go=\"`published`\" pulumi-lang-python=\"`published`\" pulumi-lang-yaml=\"`published`\" pulumi-lang-java=\"`published`\"\u003e`published`\u003c/span\u003e, the monitor is active, and it evaluates conditions and sends notifications as configured."
                    },
                    "enableLogsSample": {
                        "type": "boolean",
                        "description": "A boolean indicating whether or not to include a list of log values which triggered the alert. This is only used by log monitors. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                    },
                    "enableSamples": {
                        "type": "boolean",
                        "description": "Whether or not a list of samples which triggered the alert is included. This is only used by CI Test and Pipeline monitors."
                    },
                    "escalationMessage": {
                        "type": "string",
                        "description": "A message to include with a re-notification. Supports the `@username` notification allowed elsewhere."
                    },
                    "evaluationDelay": {
                        "type": "integer",
                        "description": "(Only applies to metric alert) Time (in seconds) to delay evaluation, as a non-negative integer.\n\nFor example, if the value is set to \u003cspan pulumi-lang-nodejs=\"`300`\" pulumi-lang-dotnet=\"`300`\" pulumi-lang-go=\"`300`\" pulumi-lang-python=\"`300`\" pulumi-lang-yaml=\"`300`\" pulumi-lang-java=\"`300`\"\u003e`300`\u003c/span\u003e (5min), the \u003cspan pulumi-lang-nodejs=\"`timeframe`\" pulumi-lang-dotnet=\"`Timeframe`\" pulumi-lang-go=\"`timeframe`\" pulumi-lang-python=\"`timeframe`\" pulumi-lang-yaml=\"`timeframe`\" pulumi-lang-java=\"`timeframe`\"\u003e`timeframe`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`last5m`\" pulumi-lang-dotnet=\"`Last5m`\" pulumi-lang-go=\"`last5m`\" pulumi-lang-python=\"`last_5m`\" pulumi-lang-yaml=\"`last5m`\" pulumi-lang-java=\"`last5m`\"\u003e`last5m`\u003c/span\u003e and the time is 7:00, the monitor will evaluate data from 6:50 to 6:55. This is useful for AWS CloudWatch and other backfilled metrics to ensure the monitor will always have data during evaluation."
                    },
                    "forceDelete": {
                        "type": "boolean",
                        "description": "A boolean indicating whether this monitor can be deleted even if it’s referenced by other resources (e.g. SLO, composite monitor)."
                    },
                    "groupRetentionDuration": {
                        "type": "string",
                        "description": "The time span after which groups with missing data are dropped from the monitor state. The minimum value is one hour, and the maximum value is 72 hours. Example values are: 60m, 1h, and 2d. This option is only available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors."
                    },
                    "groupbySimpleMonitor": {
                        "type": "boolean",
                        "description": "Whether or not to trigger one alert if any source breaches a threshold. This is only used by log monitors. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                    },
                    "includeTags": {
                        "type": "boolean",
                        "description": "A boolean indicating whether notifications from this monitor automatically insert its triggering tags into the title."
                    },
                    "message": {
                        "type": "string",
                        "description": "A message to include with notifications for this monitor.\n"
                    },
                    "monitorThresholdWindows": {
                        "$ref": "#/types/datadog:index/MonitorMonitorThresholdWindows:MonitorMonitorThresholdWindows",
                        "description": "A mapping containing \u003cspan pulumi-lang-nodejs=\"`recoveryWindow`\" pulumi-lang-dotnet=\"`RecoveryWindow`\" pulumi-lang-go=\"`recoveryWindow`\" pulumi-lang-python=\"`recovery_window`\" pulumi-lang-yaml=\"`recoveryWindow`\" pulumi-lang-java=\"`recoveryWindow`\"\u003e`recoveryWindow`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`triggerWindow`\" pulumi-lang-dotnet=\"`TriggerWindow`\" pulumi-lang-go=\"`triggerWindow`\" pulumi-lang-python=\"`trigger_window`\" pulumi-lang-yaml=\"`triggerWindow`\" pulumi-lang-java=\"`triggerWindow`\"\u003e`triggerWindow`\u003c/span\u003e values, e.g. \u003cspan pulumi-lang-nodejs=\"`last15m`\" pulumi-lang-dotnet=\"`Last15m`\" pulumi-lang-go=\"`last15m`\" pulumi-lang-python=\"`last_15m`\" pulumi-lang-yaml=\"`last15m`\" pulumi-lang-java=\"`last15m`\"\u003e`last15m`\u003c/span\u003e . Can only be used for, and are required for, anomaly monitors."
                    },
                    "monitorThresholds": {
                        "$ref": "#/types/datadog:index/MonitorMonitorThresholds:MonitorMonitorThresholds",
                        "description": "Alert thresholds of the monitor."
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of Datadog monitor."
                    },
                    "newGroupDelay": {
                        "type": "integer",
                        "description": "The time (in seconds) to skip evaluations for new groups.\n\n\u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e overrides \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e if it is set to a nonzero value."
                    },
                    "newHostDelay": {
                        "type": "integer",
                        "description": "**Deprecated**. See \u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e. Time (in seconds) to allow a host to boot and applications to fully start before starting the evaluation of monitor results. Should be a non-negative integer. This value is ignored for simple monitors and monitors not grouped by host. The only case when this should be used is to override the default and set \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e to zero for monitors grouped by host.",
                        "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`newGroupDelay`\" pulumi-lang-dotnet=\"`NewGroupDelay`\" pulumi-lang-go=\"`newGroupDelay`\" pulumi-lang-python=\"`new_group_delay`\" pulumi-lang-yaml=\"`newGroupDelay`\" pulumi-lang-java=\"`newGroupDelay`\"\u003e`newGroupDelay`\u003c/span\u003e except when setting \u003cspan pulumi-lang-nodejs=\"`newHostDelay`\" pulumi-lang-dotnet=\"`NewHostDelay`\" pulumi-lang-go=\"`newHostDelay`\" pulumi-lang-python=\"`new_host_delay`\" pulumi-lang-yaml=\"`newHostDelay`\" pulumi-lang-java=\"`newHostDelay`\"\u003e`newHostDelay`\u003c/span\u003e to zero."
                    },
                    "noDataTimeframe": {
                        "type": "integer",
                        "description": "The number of minutes before a monitor will notify when data stops reporting.\n\nWe recommend at least 2x the monitor timeframe for metric alerts or 2 minutes for service checks."
                    },
                    "notificationPresetName": {
                        "type": "string",
                        "description": "Toggles the display of additional content sent in the monitor notification."
                    },
                    "notifyAudit": {
                        "type": "boolean",
                        "description": "A boolean indicating whether tagged users will be notified on changes to this monitor. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e."
                    },
                    "notifyBies": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Controls what granularity a monitor alerts on. Only available for monitors with groupings. For instance, a monitor grouped by \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`namespace`\" pulumi-lang-dotnet=\"`Namespace`\" pulumi-lang-go=\"`namespace`\" pulumi-lang-python=\"`namespace`\" pulumi-lang-yaml=\"`namespace`\" pulumi-lang-java=\"`namespace`\"\u003e`namespace`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`pod`\" pulumi-lang-dotnet=\"`Pod`\" pulumi-lang-go=\"`pod`\" pulumi-lang-python=\"`pod`\" pulumi-lang-yaml=\"`pod`\" pulumi-lang-java=\"`pod`\"\u003e`pod`\u003c/span\u003e can be configured to only notify on each new \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e violating the alert conditions by setting \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e to `['cluster']`. Tags mentioned in \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e must be a subset of the grouping tags in the query. For example, a query grouped by \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`namespace`\" pulumi-lang-dotnet=\"`Namespace`\" pulumi-lang-go=\"`namespace`\" pulumi-lang-python=\"`namespace`\" pulumi-lang-yaml=\"`namespace`\" pulumi-lang-java=\"`namespace`\"\u003e`namespace`\u003c/span\u003e cannot notify on \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e. Setting \u003cspan pulumi-lang-nodejs=\"`notifyBy`\" pulumi-lang-dotnet=\"`NotifyBy`\" pulumi-lang-go=\"`notifyBy`\" pulumi-lang-python=\"`notify_by`\" pulumi-lang-yaml=\"`notifyBy`\" pulumi-lang-java=\"`notifyBy`\"\u003e`notifyBy`\u003c/span\u003e to `[*]` configures the monitor to notify as a simple-alert."
                    },
                    "notifyNoData": {
                        "type": "boolean",
                        "description": "A boolean indicating whether this monitor will notify when data stops reporting."
                    },
                    "onMissingData": {
                        "type": "string",
                        "description": "Controls how groups or monitors are treated if an evaluation does not return any data points. The default option results in different behavior depending on the monitor query type. For monitors using `Count` queries, an empty monitor evaluation is treated as 0 and is compared to the threshold conditions. For monitors using any query type other than `Count`, for example `Gauge`, `Measure`, or `Rate`, the monitor shows the last known status. This option is not available for Service Check, Composite, or SLO monitors. Valid values are: \u003cspan pulumi-lang-nodejs=\"`showNoData`\" pulumi-lang-dotnet=\"`ShowNoData`\" pulumi-lang-go=\"`showNoData`\" pulumi-lang-python=\"`show_no_data`\" pulumi-lang-yaml=\"`showNoData`\" pulumi-lang-java=\"`showNoData`\"\u003e`showNoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`showAndNotifyNoData`\" pulumi-lang-dotnet=\"`ShowAndNotifyNoData`\" pulumi-lang-go=\"`showAndNotifyNoData`\" pulumi-lang-python=\"`show_and_notify_no_data`\" pulumi-lang-yaml=\"`showAndNotifyNoData`\" pulumi-lang-java=\"`showAndNotifyNoData`\"\u003e`showAndNotifyNoData`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`resolve`\" pulumi-lang-dotnet=\"`Resolve`\" pulumi-lang-go=\"`resolve`\" pulumi-lang-python=\"`resolve`\" pulumi-lang-yaml=\"`resolve`\" pulumi-lang-java=\"`resolve`\"\u003e`resolve`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e."
                    },
                    "priority": {
                        "type": "string",
                        "description": "Integer from 1 (high) to 5 (low) indicating alert severity."
                    },
                    "query": {
                        "type": "string",
                        "description": "The monitor query to notify on. Note this is not the same query you see in the UI and the syntax is different depending on the monitor type, please see the [API Reference](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor) for details. `terraform plan` will validate query contents unless \u003cspan pulumi-lang-nodejs=\"`validate`\" pulumi-lang-dotnet=\"`Validate`\" pulumi-lang-go=\"`validate`\" pulumi-lang-python=\"`validate`\" pulumi-lang-yaml=\"`validate`\" pulumi-lang-java=\"`validate`\"\u003e`validate`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n\n**Note:** APM latency data is now available as Distribution Metrics. Existing monitors have been migrated automatically but all terraformed monitors can still use the existing metrics. We strongly recommend updating monitor definitions to query the new metrics. To learn more, or to see examples of how to update your terraform definitions to utilize the new distribution metrics, see the [detailed doc](https://docs.datadoghq.com/tracing/guide/ddsketch_trace_metrics/)."
                    },
                    "renotifyInterval": {
                        "type": "integer",
                        "description": "The number of minutes after the last notification before a monitor will re-notify on the current status. It will only re-notify if it's not resolved."
                    },
                    "renotifyOccurrences": {
                        "type": "integer",
                        "description": "The number of re-notification messages that should be sent on the current status."
                    },
                    "renotifyStatuses": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The types of statuses for which re-notification messages should be sent."
                    },
                    "requireFullWindow": {
                        "type": "boolean",
                        "description": "A boolean indicating whether this monitor needs a full window of data before it's evaluated. Datadog strongly recommends you set this to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e for sparse metrics, otherwise some evaluations may be skipped. If there's a\u003cspan pulumi-lang-nodejs=\" customSchedule \" pulumi-lang-dotnet=\" CustomSchedule \" pulumi-lang-go=\" customSchedule \" pulumi-lang-python=\" custom_schedule \" pulumi-lang-yaml=\" customSchedule \" pulumi-lang-java=\" customSchedule \"\u003e customSchedule \u003c/span\u003eset, \u003cspan pulumi-lang-nodejs=\"`requireFullWindow`\" pulumi-lang-dotnet=\"`RequireFullWindow`\" pulumi-lang-go=\"`requireFullWindow`\" pulumi-lang-python=\"`require_full_window`\" pulumi-lang-yaml=\"`requireFullWindow`\" pulumi-lang-java=\"`requireFullWindow`\"\u003e`requireFullWindow`\u003c/span\u003e must be false and will be ignored."
                    },
                    "restrictedRoles": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of unique role identifiers to define which roles are allowed to edit the monitor. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. Roles unique identifiers can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles/#list-roles) in the `data.id` field.",
                        "deprecationMessage": "Use \u003cspan pulumi-lang-nodejs=\"`datadog.RestrictionPolicy`\" pulumi-lang-dotnet=\"`datadog.RestrictionPolicy`\" pulumi-lang-go=\"`RestrictionPolicy`\" pulumi-lang-python=\"`RestrictionPolicy`\" pulumi-lang-yaml=\"`datadog.RestrictionPolicy`\" pulumi-lang-java=\"`datadog.RestrictionPolicy`\"\u003e`datadog.RestrictionPolicy`\u003c/span\u003e resource to manage permission."
                    },
                    "schedulingOptions": {
                        "$ref": "#/types/datadog:index/MonitorSchedulingOptions:MonitorSchedulingOptions",
                        "description": "Configuration options for scheduling."
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of tags to associate with your monitor. This can help you categorize and filter monitors in the manage monitors page of the UI. Note: it's not currently possible to filter by these tags when querying via the API"
                    },
                    "timeoutH": {
                        "type": "integer",
                        "description": "The number of hours of the monitor not reporting data before it automatically resolves from a triggered state. The minimum allowed value is 0 hours. The maximum allowed value is 24 hours."
                    },
                    "type": {
                        "type": "string",
                        "description": "The type of the monitor. The mapping from these types to the types found in the Datadog Web UI can be found in the Datadog API [documentation page](https://docs.datadoghq.com/api/v1/monitors/#create-a-monitor). Note: The monitor type cannot be changed after a monitor is created.",
                        "willReplaceOnChanges": true
                    },
                    "validate": {
                        "type": "boolean",
                        "description": "If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skip the validation call done during plan."
                    },
                    "variables": {
                        "$ref": "#/types/datadog:index/MonitorVariables:MonitorVariables"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/monitorConfigPolicy:MonitorConfigPolicy": {
            "description": "Provides a Datadog monitor config policy resource. This can be used to create and manage Datadog monitor config policies.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst test = new datadog.MonitorConfigPolicy(\"test\", {\n    policyType: \"tag\",\n    tagPolicy: {\n        tagKey: \"env\",\n        tagKeyRequired: false,\n        validTagValues: [\n            \"staging\",\n            \"prod\",\n        ],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntest = datadog.MonitorConfigPolicy(\"test\",\n    policy_type=\"tag\",\n    tag_policy={\n        \"tag_key\": \"env\",\n        \"tag_key_required\": False,\n        \"valid_tag_values\": [\n            \"staging\",\n            \"prod\",\n        ],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = new Datadog.MonitorConfigPolicy(\"test\", new()\n    {\n        PolicyType = \"tag\",\n        TagPolicy = new Datadog.Inputs.MonitorConfigPolicyTagPolicyArgs\n        {\n            TagKey = \"env\",\n            TagKeyRequired = false,\n            ValidTagValues = new[]\n            {\n                \"staging\",\n                \"prod\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewMonitorConfigPolicy(ctx, \"test\", \u0026datadog.MonitorConfigPolicyArgs{\n\t\t\tPolicyType: pulumi.String(\"tag\"),\n\t\t\tTagPolicy: \u0026datadog.MonitorConfigPolicyTagPolicyArgs{\n\t\t\t\tTagKey:         pulumi.String(\"env\"),\n\t\t\t\tTagKeyRequired: pulumi.Bool(false),\n\t\t\t\tValidTagValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"staging\"),\n\t\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.MonitorConfigPolicy;\nimport com.pulumi.datadog.MonitorConfigPolicyArgs;\nimport com.pulumi.datadog.inputs.MonitorConfigPolicyTagPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new MonitorConfigPolicy(\"test\", MonitorConfigPolicyArgs.builder()\n            .policyType(\"tag\")\n            .tagPolicy(MonitorConfigPolicyTagPolicyArgs.builder()\n                .tagKey(\"env\")\n                .tagKeyRequired(false)\n                .validTagValues(                \n                    \"staging\",\n                    \"prod\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: datadog:MonitorConfigPolicy\n    properties:\n      policyType: tag\n      tagPolicy:\n        tagKey: env\n        tagKeyRequired: false\n        validTagValues:\n          - staging\n          - prod\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
            "properties": {
                "policyType": {
                    "type": "string",
                    "description": "The monitor config policy type Valid values are \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                },
                "tagPolicy": {
                    "$ref": "#/types/datadog:index/MonitorConfigPolicyTagPolicy:MonitorConfigPolicyTagPolicy",
                    "description": "Config for a tag policy. Only set if \u003cspan pulumi-lang-nodejs=\"`policyType`\" pulumi-lang-dotnet=\"`PolicyType`\" pulumi-lang-go=\"`policyType`\" pulumi-lang-python=\"`policy_type`\" pulumi-lang-yaml=\"`policyType`\" pulumi-lang-java=\"`policyType`\"\u003e`policyType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                }
            },
            "required": [
                "policyType"
            ],
            "inputProperties": {
                "policyType": {
                    "type": "string",
                    "description": "The monitor config policy type Valid values are \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                },
                "tagPolicy": {
                    "$ref": "#/types/datadog:index/MonitorConfigPolicyTagPolicy:MonitorConfigPolicyTagPolicy",
                    "description": "Config for a tag policy. Only set if \u003cspan pulumi-lang-nodejs=\"`policyType`\" pulumi-lang-dotnet=\"`PolicyType`\" pulumi-lang-go=\"`policyType`\" pulumi-lang-python=\"`policy_type`\" pulumi-lang-yaml=\"`policyType`\" pulumi-lang-java=\"`policyType`\"\u003e`policyType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "policyType"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MonitorConfigPolicy resources.\n",
                "properties": {
                    "policyType": {
                        "type": "string",
                        "description": "The monitor config policy type Valid values are \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                    },
                    "tagPolicy": {
                        "$ref": "#/types/datadog:index/MonitorConfigPolicyTagPolicy:MonitorConfigPolicyTagPolicy",
                        "description": "Config for a tag policy. Only set if \u003cspan pulumi-lang-nodejs=\"`policyType`\" pulumi-lang-dotnet=\"`PolicyType`\" pulumi-lang-go=\"`policyType`\" pulumi-lang-python=\"`policy_type`\" pulumi-lang-yaml=\"`policyType`\" pulumi-lang-java=\"`policyType`\"\u003e`policyType`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`tag`\" pulumi-lang-dotnet=\"`Tag`\" pulumi-lang-go=\"`tag`\" pulumi-lang-python=\"`tag`\" pulumi-lang-yaml=\"`tag`\" pulumi-lang-java=\"`tag`\"\u003e`tag`\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/monitorJson:MonitorJson": {
            "description": "Provides a Datadog monitor JSON resource. This can be used to create and manage Datadog monitors using the JSON definition.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst monitorJson = new datadog.MonitorJson(\"monitor_json\", {monitor: `{\n    \"name\": \"Example monitor - service check\",\n    \"type\": \"service check\",\n    \"query\": \"\\\\\"ntp.in_sync\\\\\".by(\\\\\"*\\\\\").last(2).count_by_status()\",\n    \"message\": \"Change the message triggers if any host's clock goes out of sync with the time given by NTP. The offset threshold is configured in the Agent's 'ntp.yaml' file.\\\\n\\\\nSee [Troubleshooting NTP Offset issues](https://docs.datadoghq.com/agent/troubleshooting/ntp for more details on cause and resolution.\",\n    \"tags\": [],\n    \"multi\": true,\n\\x09\"restricted_roles\": null,\n    \"options\": {\n        \"include_tags\": true,\n        \"new_host_delay\": 150,\n        \"notify_audit\": false,\n        \"notify_no_data\": false,\n        \"thresholds\": {\n            \"warning\": 1,\n            \"ok\": 1,\n            \"critical\": 1\n        }\n    },\n    \"priority\": null,\n    \"classification\": \"custom\"\n}\n`});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmonitor_json = datadog.MonitorJson(\"monitor_json\", monitor=\"\"\"{\n    \"name\": \"Example monitor - service check\",\n    \"type\": \"service check\",\n    \"query\": \"\\\"ntp.in_sync\\\".by(\\\"*\\\").last(2).count_by_status()\",\n    \"message\": \"Change the message triggers if any host's clock goes out of sync with the time given by NTP. The offset threshold is configured in the Agent's 'ntp.yaml' file.\\n\\nSee [Troubleshooting NTP Offset issues](https://docs.datadoghq.com/agent/troubleshooting/ntp for more details on cause and resolution.\",\n    \"tags\": [],\n    \"multi\": true,\n\\x09\"restricted_roles\": null,\n    \"options\": {\n        \"include_tags\": true,\n        \"new_host_delay\": 150,\n        \"notify_audit\": false,\n        \"notify_no_data\": false,\n        \"thresholds\": {\n            \"warning\": 1,\n            \"ok\": 1,\n            \"critical\": 1\n        }\n    },\n    \"priority\": null,\n    \"classification\": \"custom\"\n}\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var monitorJson = new Datadog.MonitorJson(\"monitor_json\", new()\n    {\n        Monitor = @\"{\n    \"\"name\"\": \"\"Example monitor - service check\"\",\n    \"\"type\"\": \"\"service check\"\",\n    \"\"query\"\": \"\"\\\"\"ntp.in_sync\\\"\".by(\\\"\"*\\\"\").last(2).count_by_status()\"\",\n    \"\"message\"\": \"\"Change the message triggers if any host's clock goes out of sync with the time given by NTP. The offset threshold is configured in the Agent's 'ntp.yaml' file.\\n\\nSee [Troubleshooting NTP Offset issues](https://docs.datadoghq.com/agent/troubleshooting/ntp for more details on cause and resolution.\"\",\n    \"\"tags\"\": [],\n    \"\"multi\"\": true,\n\t\"\"restricted_roles\"\": null,\n    \"\"options\"\": {\n        \"\"include_tags\"\": true,\n        \"\"new_host_delay\"\": 150,\n        \"\"notify_audit\"\": false,\n        \"\"notify_no_data\"\": false,\n        \"\"thresholds\"\": {\n            \"\"warning\"\": 1,\n            \"\"ok\"\": 1,\n            \"\"critical\"\": 1\n        }\n    },\n    \"\"priority\"\": null,\n    \"\"classification\"\": \"\"custom\"\"\n}\n\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewMonitorJson(ctx, \"monitor_json\", \u0026datadog.MonitorJsonArgs{\n\t\t\tMonitor: pulumi.String(`{\n    \"name\": \"Example monitor - service check\",\n    \"type\": \"service check\",\n    \"query\": \"\\\"ntp.in_sync\\\".by(\\\"*\\\").last(2).count_by_status()\",\n    \"message\": \"Change the message triggers if any host's clock goes out of sync with the time given by NTP. The offset threshold is configured in the Agent's 'ntp.yaml' file.\\n\\nSee [Troubleshooting NTP Offset issues](https://docs.datadoghq.com/agent/troubleshooting/ntp for more details on cause and resolution.\",\n    \"tags\": [],\n    \"multi\": true,\n\t\"restricted_roles\": null,\n    \"options\": {\n        \"include_tags\": true,\n        \"new_host_delay\": 150,\n        \"notify_audit\": false,\n        \"notify_no_data\": false,\n        \"thresholds\": {\n            \"warning\": 1,\n            \"ok\": 1,\n            \"critical\": 1\n        }\n    },\n    \"priority\": null,\n    \"classification\": \"custom\"\n}\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.MonitorJson;\nimport com.pulumi.datadog.MonitorJsonArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var monitorJson = new MonitorJson(\"monitorJson\", MonitorJsonArgs.builder()\n            .monitor(\"\"\"\n{\n    \"name\": \"Example monitor - service check\",\n    \"type\": \"service check\",\n    \"query\": \"\\\"ntp.in_sync\\\".by(\\\"*\\\").last(2).count_by_status()\",\n    \"message\": \"Change the message triggers if any host's clock goes out of sync with the time given by NTP. The offset threshold is configured in the Agent's 'ntp.yaml' file.\\n\\nSee [Troubleshooting NTP Offset issues](https://docs.datadoghq.com/agent/troubleshooting/ntp for more details on cause and resolution.\",\n    \"tags\": [],\n    \"multi\": true,\n\t\"restricted_roles\": null,\n    \"options\": {\n        \"include_tags\": true,\n        \"new_host_delay\": 150,\n        \"notify_audit\": false,\n        \"notify_no_data\": false,\n        \"thresholds\": {\n            \"warning\": 1,\n            \"ok\": 1,\n            \"critical\": 1\n        }\n    },\n    \"priority\": null,\n    \"classification\": \"custom\"\n}\n            \"\"\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  monitorJson:\n    type: datadog:MonitorJson\n    name: monitor_json\n    properties:\n      monitor: |\n        {\n            \"name\": \"Example monitor - service check\",\n            \"type\": \"service check\",\n            \"query\": \"\\\"ntp.in_sync\\\".by(\\\"*\\\").last(2).count_by_status()\",\n            \"message\": \"Change the message triggers if any host's clock goes out of sync with the time given by NTP. The offset threshold is configured in the Agent's 'ntp.yaml' file.\\n\\nSee [Troubleshooting NTP Offset issues](https://docs.datadoghq.com/agent/troubleshooting/ntp for more details on cause and resolution.\",\n            \"tags\": [],\n            \"multi\": true,\n        \t\"restricted_roles\": null,\n            \"options\": {\n                \"include_tags\": true,\n                \"new_host_delay\": 150,\n                \"notify_audit\": false,\n                \"notify_no_data\": false,\n                \"thresholds\": {\n                    \"warning\": 1,\n                    \"ok\": 1,\n                    \"critical\": 1\n                }\n            },\n            \"priority\": null,\n            \"classification\": \"custom\"\n        }\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/monitorJson:MonitorJson monitor_json 123456\n```\n\n",
            "properties": {
                "monitor": {
                    "type": "string",
                    "description": "The JSON formatted definition of the monitor.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL of the monitor.\n"
                }
            },
            "required": [
                "monitor",
                "url"
            ],
            "inputProperties": {
                "monitor": {
                    "type": "string",
                    "description": "The JSON formatted definition of the monitor.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The URL of the monitor.\n"
                }
            },
            "requiredInputs": [
                "monitor"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MonitorJson resources.\n",
                "properties": {
                    "monitor": {
                        "type": "string",
                        "description": "The JSON formatted definition of the monitor.\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "The URL of the monitor.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/monitorNotificationRule:MonitorNotificationRule": {
            "description": "Provides a Datadog MonitorNotificationRule resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst teamCheckoutNotificationRule = new datadog.MonitorNotificationRule(\"team_checkout_notification_rule\", {\n    name: \"Route alerts from checkout team\",\n    recipients: [\n        \"slack-checkout-ops\",\n        \"jira-checkout\",\n    ],\n    filter: [{\n        tags: [\"team:payment\"],\n    }],\n});\nconst teamPaymentNotificationRule = new datadog.MonitorNotificationRule(\"team_payment_notification_rule\", {\n    name: \"Routing logic for team payment\",\n    filter: [{\n        scope: \"team:payment AND NOT env:dev AND service:(payment-processing OR payment-gateway)\",\n    }],\n    conditionalRecipients: [{\n        conditions: [\n            {\n                scope: \"priority:p1\",\n                recipients: [\n                    \"oncall-payment\",\n                    \"slack-payment\",\n                ],\n            },\n            {\n                scope: \"priority:p5\",\n                recipients: [\"slack-payment\"],\n            },\n        ],\n        fallbackRecipients: [\"slack-payment\"],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nteam_checkout_notification_rule = datadog.MonitorNotificationRule(\"team_checkout_notification_rule\",\n    name=\"Route alerts from checkout team\",\n    recipients=[\n        \"slack-checkout-ops\",\n        \"jira-checkout\",\n    ],\n    filter=[{\n        \"tags\": [\"team:payment\"],\n    }])\nteam_payment_notification_rule = datadog.MonitorNotificationRule(\"team_payment_notification_rule\",\n    name=\"Routing logic for team payment\",\n    filter=[{\n        \"scope\": \"team:payment AND NOT env:dev AND service:(payment-processing OR payment-gateway)\",\n    }],\n    conditional_recipients=[{\n        \"conditions\": [\n            {\n                \"scope\": \"priority:p1\",\n                \"recipients\": [\n                    \"oncall-payment\",\n                    \"slack-payment\",\n                ],\n            },\n            {\n                \"scope\": \"priority:p5\",\n                \"recipients\": [\"slack-payment\"],\n            },\n        ],\n        \"fallbackRecipients\": [\"slack-payment\"],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var teamCheckoutNotificationRule = new Datadog.MonitorNotificationRule(\"team_checkout_notification_rule\", new()\n    {\n        Name = \"Route alerts from checkout team\",\n        Recipients = new[]\n        {\n            \"slack-checkout-ops\",\n            \"jira-checkout\",\n        },\n        Filter = new[]\n        {\n            \n            {\n                { \"tags\", new[]\n                {\n                    \"team:payment\",\n                } },\n            },\n        },\n    });\n\n    var teamPaymentNotificationRule = new Datadog.MonitorNotificationRule(\"team_payment_notification_rule\", new()\n    {\n        Name = \"Routing logic for team payment\",\n        Filter = new[]\n        {\n            \n            {\n                { \"scope\", \"team:payment AND NOT env:dev AND service:(payment-processing OR payment-gateway)\" },\n            },\n        },\n        ConditionalRecipients = new[]\n        {\n            \n            {\n                { \"conditions\", new[]\n                {\n                    \n                    {\n                        { \"scope\", \"priority:p1\" },\n                        { \"recipients\", new[]\n                        {\n                            \"oncall-payment\",\n                            \"slack-payment\",\n                        } },\n                    },\n                    \n                    {\n                        { \"scope\", \"priority:p5\" },\n                        { \"recipients\", new[]\n                        {\n                            \"slack-payment\",\n                        } },\n                    },\n                } },\n                { \"fallbackRecipients\", new[]\n                {\n                    \"slack-payment\",\n                } },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewMonitorNotificationRule(ctx, \"team_checkout_notification_rule\", \u0026datadog.MonitorNotificationRuleArgs{\n\t\t\tName: pulumi.String(\"Route alerts from checkout team\"),\n\t\t\tRecipients: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"slack-checkout-ops\"),\n\t\t\t\tpulumi.String(\"jira-checkout\"),\n\t\t\t},\n\t\t\tFilter: datadog.MonitorNotificationRuleFilterArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"tags\": []string{\n\t\t\t\t\t\t\"team:payment\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datadog.NewMonitorNotificationRule(ctx, \"team_payment_notification_rule\", \u0026datadog.MonitorNotificationRuleArgs{\n\t\t\tName: pulumi.String(\"Routing logic for team payment\"),\n\t\t\tFilter: datadog.MonitorNotificationRuleFilterArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"scope\": \"team:payment AND NOT env:dev AND service:(payment-processing OR payment-gateway)\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tConditionalRecipients: datadog.MonitorNotificationRuleConditionalRecipientsArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"conditions\": []interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"scope\": \"priority:p1\",\n\t\t\t\t\t\t\t\"recipients\": []string{\n\t\t\t\t\t\t\t\t\"oncall-payment\",\n\t\t\t\t\t\t\t\t\"slack-payment\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"scope\": \"priority:p5\",\n\t\t\t\t\t\t\t\"recipients\": []string{\n\t\t\t\t\t\t\t\t\"slack-payment\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t\"fallbackRecipients\": []string{\n\t\t\t\t\t\t\"slack-payment\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.MonitorNotificationRule;\nimport com.pulumi.datadog.MonitorNotificationRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var teamCheckoutNotificationRule = new MonitorNotificationRule(\"teamCheckoutNotificationRule\", MonitorNotificationRuleArgs.builder()\n            .name(\"Route alerts from checkout team\")\n            .recipients(            \n                \"slack-checkout-ops\",\n                \"jira-checkout\")\n            .filter(MonitorNotificationRuleFilterArgs.builder()\n                .tags(\"team:payment\")\n                .build())\n            .build());\n\n        var teamPaymentNotificationRule = new MonitorNotificationRule(\"teamPaymentNotificationRule\", MonitorNotificationRuleArgs.builder()\n            .name(\"Routing logic for team payment\")\n            .filter(MonitorNotificationRuleFilterArgs.builder()\n                .scope(\"team:payment AND NOT env:dev AND service:(payment-processing OR payment-gateway)\")\n                .build())\n            .conditionalRecipients(MonitorNotificationRuleConditionalRecipientsArgs.builder()\n                .conditions(                \n                    MonitorNotificationRuleConditionalRecipientsConditionArgs.builder()\n                        .scope(\"priority:p1\")\n                        .recipients(                        \n                            \"oncall-payment\",\n                            \"slack-payment\")\n                        .build(),\n                    MonitorNotificationRuleConditionalRecipientsConditionArgs.builder()\n                        .scope(\"priority:p5\")\n                        .recipients(\"slack-payment\")\n                        .build())\n                .fallbackRecipients(\"slack-payment\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  teamCheckoutNotificationRule:\n    type: datadog:MonitorNotificationRule\n    name: team_checkout_notification_rule\n    properties:\n      name: Route alerts from checkout team\n      recipients:\n        - slack-checkout-ops\n        - jira-checkout\n      filter:\n        - tags:\n            - team:payment\n  teamPaymentNotificationRule:\n    type: datadog:MonitorNotificationRule\n    name: team_payment_notification_rule\n    properties:\n      name: Routing logic for team payment\n      filter:\n        - scope: team:payment AND NOT env:dev AND service:(payment-processing OR payment-gateway)\n      conditionalRecipients:\n        - conditions:\n            - scope: priority:p1\n              recipients:\n                - oncall-payment\n                - slack-payment\n            - scope: priority:p5\n              recipients:\n                - slack-payment\n          fallbackRecipients:\n            - slack-payment\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/monitorNotificationRule:MonitorNotificationRule new_list \"00e000000-0000-1234-0000-000000000000\"\n```\n\n",
            "properties": {
                "conditionalRecipients": {
                    "$ref": "#/types/datadog:index/MonitorNotificationRuleConditionalRecipients:MonitorNotificationRuleConditionalRecipients",
                    "description": "Use conditional recipients to define different recipients for different situations. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`recipients`\" pulumi-lang-dotnet=\"`Recipients`\" pulumi-lang-go=\"`recipients`\" pulumi-lang-python=\"`recipients`\" pulumi-lang-yaml=\"`recipients`\" pulumi-lang-java=\"`recipients`\"\u003e`recipients`\u003c/span\u003e.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/MonitorNotificationRuleFilter:MonitorNotificationRuleFilter",
                    "description": "Specifies the matching criteria for monitor notifications.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the monitor notification rule.\n"
                },
                "recipients": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of recipients to notify. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`conditionalRecipients`\" pulumi-lang-dotnet=\"`ConditionalRecipients`\" pulumi-lang-go=\"`conditionalRecipients`\" pulumi-lang-python=\"`conditional_recipients`\" pulumi-lang-yaml=\"`conditionalRecipients`\" pulumi-lang-java=\"`conditionalRecipients`\"\u003e`conditionalRecipients`\u003c/span\u003e.\n"
                }
            },
            "required": [
                "filter",
                "name"
            ],
            "inputProperties": {
                "conditionalRecipients": {
                    "$ref": "#/types/datadog:index/MonitorNotificationRuleConditionalRecipients:MonitorNotificationRuleConditionalRecipients",
                    "description": "Use conditional recipients to define different recipients for different situations. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`recipients`\" pulumi-lang-dotnet=\"`Recipients`\" pulumi-lang-go=\"`recipients`\" pulumi-lang-python=\"`recipients`\" pulumi-lang-yaml=\"`recipients`\" pulumi-lang-java=\"`recipients`\"\u003e`recipients`\u003c/span\u003e.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/MonitorNotificationRuleFilter:MonitorNotificationRuleFilter",
                    "description": "Specifies the matching criteria for monitor notifications.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the monitor notification rule.\n"
                },
                "recipients": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of recipients to notify. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`conditionalRecipients`\" pulumi-lang-dotnet=\"`ConditionalRecipients`\" pulumi-lang-go=\"`conditionalRecipients`\" pulumi-lang-python=\"`conditional_recipients`\" pulumi-lang-yaml=\"`conditionalRecipients`\" pulumi-lang-java=\"`conditionalRecipients`\"\u003e`conditionalRecipients`\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "filter",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering MonitorNotificationRule resources.\n",
                "properties": {
                    "conditionalRecipients": {
                        "$ref": "#/types/datadog:index/MonitorNotificationRuleConditionalRecipients:MonitorNotificationRuleConditionalRecipients",
                        "description": "Use conditional recipients to define different recipients for different situations. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`recipients`\" pulumi-lang-dotnet=\"`Recipients`\" pulumi-lang-go=\"`recipients`\" pulumi-lang-python=\"`recipients`\" pulumi-lang-yaml=\"`recipients`\" pulumi-lang-java=\"`recipients`\"\u003e`recipients`\u003c/span\u003e.\n"
                    },
                    "filter": {
                        "$ref": "#/types/datadog:index/MonitorNotificationRuleFilter:MonitorNotificationRuleFilter",
                        "description": "Specifies the matching criteria for monitor notifications.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the monitor notification rule.\n"
                    },
                    "recipients": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of recipients to notify. Cannot be used with \u003cspan pulumi-lang-nodejs=\"`conditionalRecipients`\" pulumi-lang-dotnet=\"`ConditionalRecipients`\" pulumi-lang-go=\"`conditionalRecipients`\" pulumi-lang-python=\"`conditional_recipients`\" pulumi-lang-yaml=\"`conditionalRecipients`\" pulumi-lang-java=\"`conditionalRecipients`\"\u003e`conditionalRecipients`\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/observabilityPipeline:ObservabilityPipeline": {
            "description": "Provides a Datadog Observability Pipeline resource. Observability Pipelines allows you to collect and process logs within your own infrastructure, and then route them to downstream integrations. \n\nDatadog recommends using the `-parallelism=1` option to apply this resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst test = new datadog.ObservabilityPipeline(\"test\", {\n    name: \"test pipeline\",\n    config: {\n        destinations: [{\n            datadogLogs: [{}],\n            id: \"destination-1\",\n            inputs: [\"processor-group-1\"],\n        }],\n        sources: [{\n            id: \"source-1\",\n            datadogAgents: [{\n                tls: {\n                    crtFile: \"/etc/certs/client.crt\",\n                    keyFile: \"/etc/certs/client.key\",\n                    caFile: \"/etc/certs/ca.crt\",\n                },\n            }],\n        }],\n        processorGroups: [{\n            id: \"processor-group-1\",\n            enabled: true,\n            include: \"service:my-service\",\n            inputs: [\"source-1\"],\n            displayName: \"processor group\",\n            processors: [\n                {\n                    id: \"parser-1\",\n                    enabled: true,\n                    include: \"service:my-service\",\n                    displayName: \"json parser\",\n                    parseJson: {\n                        field: \"message\",\n                    },\n                },\n                {\n                    id: \"filter-1\",\n                    enabled: true,\n                    include: \"service:my-service\",\n                    displayName: \"filter\",\n                    filter: {},\n                },\n            ],\n        }],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntest = datadog.ObservabilityPipeline(\"test\",\n    name=\"test pipeline\",\n    config={\n        \"destinations\": [{\n            \"datadog_logs\": [{}],\n            \"id\": \"destination-1\",\n            \"inputs\": [\"processor-group-1\"],\n        }],\n        \"sources\": [{\n            \"id\": \"source-1\",\n            \"datadog_agents\": [{\n                \"tls\": {\n                    \"crt_file\": \"/etc/certs/client.crt\",\n                    \"key_file\": \"/etc/certs/client.key\",\n                    \"ca_file\": \"/etc/certs/ca.crt\",\n                },\n            }],\n        }],\n        \"processor_groups\": [{\n            \"id\": \"processor-group-1\",\n            \"enabled\": True,\n            \"include\": \"service:my-service\",\n            \"inputs\": [\"source-1\"],\n            \"display_name\": \"processor group\",\n            \"processors\": [\n                {\n                    \"id\": \"parser-1\",\n                    \"enabled\": True,\n                    \"include\": \"service:my-service\",\n                    \"display_name\": \"json parser\",\n                    \"parse_json\": {\n                        \"field\": \"message\",\n                    },\n                },\n                {\n                    \"id\": \"filter-1\",\n                    \"enabled\": True,\n                    \"include\": \"service:my-service\",\n                    \"display_name\": \"filter\",\n                    \"filter\": {},\n                },\n            ],\n        }],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = new Datadog.ObservabilityPipeline(\"test\", new()\n    {\n        Name = \"test pipeline\",\n        Config = new Datadog.Inputs.ObservabilityPipelineConfigArgs\n        {\n            Destinations = new[]\n            {\n                new Datadog.Inputs.ObservabilityPipelineConfigDestinationArgs\n                {\n                    DatadogLogs = new[]\n                    {\n                        null,\n                    },\n                    Id = \"destination-1\",\n                    Inputs = new[]\n                    {\n                        \"processor-group-1\",\n                    },\n                },\n            },\n            Sources = new[]\n            {\n                new Datadog.Inputs.ObservabilityPipelineConfigSourceArgs\n                {\n                    Id = \"source-1\",\n                    DatadogAgents = new[]\n                    {\n                        new Datadog.Inputs.ObservabilityPipelineConfigSourceDatadogAgentArgs\n                        {\n                            Tls = new Datadog.Inputs.ObservabilityPipelineConfigSourceDatadogAgentTlsArgs\n                            {\n                                CrtFile = \"/etc/certs/client.crt\",\n                                KeyFile = \"/etc/certs/client.key\",\n                                CaFile = \"/etc/certs/ca.crt\",\n                            },\n                        },\n                    },\n                },\n            },\n            ProcessorGroups = new[]\n            {\n                new Datadog.Inputs.ObservabilityPipelineConfigProcessorGroupArgs\n                {\n                    Id = \"processor-group-1\",\n                    Enabled = true,\n                    Include = \"service:my-service\",\n                    Inputs = new[]\n                    {\n                        \"source-1\",\n                    },\n                    DisplayName = \"processor group\",\n                    Processors = new[]\n                    {\n                        new Datadog.Inputs.ObservabilityPipelineConfigProcessorGroupProcessorArgs\n                        {\n                            Id = \"parser-1\",\n                            Enabled = true,\n                            Include = \"service:my-service\",\n                            DisplayName = \"json parser\",\n                            ParseJson = new Datadog.Inputs.ObservabilityPipelineConfigProcessorGroupProcessorParseJsonArgs\n                            {\n                                Field = \"message\",\n                            },\n                        },\n                        new Datadog.Inputs.ObservabilityPipelineConfigProcessorGroupProcessorArgs\n                        {\n                            Id = \"filter-1\",\n                            Enabled = true,\n                            Include = \"service:my-service\",\n                            DisplayName = \"filter\",\n                            Filter = null,\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewObservabilityPipeline(ctx, \"test\", \u0026datadog.ObservabilityPipelineArgs{\n\t\t\tName: pulumi.String(\"test pipeline\"),\n\t\t\tConfig: \u0026datadog.ObservabilityPipelineConfigArgs{\n\t\t\t\tDestinations: datadog.ObservabilityPipelineConfigDestinationArray{\n\t\t\t\t\t\u0026datadog.ObservabilityPipelineConfigDestinationArgs{\n\t\t\t\t\t\tDatadogLogs: datadog.ObservabilityPipelineConfigDestinationDatadogLogArray{\n\t\t\t\t\t\t\t\u0026datadog.ObservabilityPipelineConfigDestinationDatadogLogArgs{},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tId: pulumi.String(\"destination-1\"),\n\t\t\t\t\t\tInputs: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"processor-group-1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSources: datadog.ObservabilityPipelineConfigSourceArray{\n\t\t\t\t\t\u0026datadog.ObservabilityPipelineConfigSourceArgs{\n\t\t\t\t\t\tId: pulumi.String(\"source-1\"),\n\t\t\t\t\t\tDatadogAgents: datadog.ObservabilityPipelineConfigSourceDatadogAgentArray{\n\t\t\t\t\t\t\t\u0026datadog.ObservabilityPipelineConfigSourceDatadogAgentArgs{\n\t\t\t\t\t\t\t\tTls: \u0026datadog.ObservabilityPipelineConfigSourceDatadogAgentTlsArgs{\n\t\t\t\t\t\t\t\t\tCrtFile: pulumi.String(\"/etc/certs/client.crt\"),\n\t\t\t\t\t\t\t\t\tKeyFile: pulumi.String(\"/etc/certs/client.key\"),\n\t\t\t\t\t\t\t\t\tCaFile:  pulumi.String(\"/etc/certs/ca.crt\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tProcessorGroups: datadog.ObservabilityPipelineConfigProcessorGroupArray{\n\t\t\t\t\t\u0026datadog.ObservabilityPipelineConfigProcessorGroupArgs{\n\t\t\t\t\t\tId:      pulumi.String(\"processor-group-1\"),\n\t\t\t\t\t\tEnabled: pulumi.Bool(true),\n\t\t\t\t\t\tInclude: pulumi.String(\"service:my-service\"),\n\t\t\t\t\t\tInputs: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"source-1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDisplayName: pulumi.String(\"processor group\"),\n\t\t\t\t\t\tProcessors: datadog.ObservabilityPipelineConfigProcessorGroupProcessorArray{\n\t\t\t\t\t\t\t\u0026datadog.ObservabilityPipelineConfigProcessorGroupProcessorArgs{\n\t\t\t\t\t\t\t\tId:          pulumi.String(\"parser-1\"),\n\t\t\t\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t\t\t\t\tInclude:     pulumi.String(\"service:my-service\"),\n\t\t\t\t\t\t\t\tDisplayName: pulumi.String(\"json parser\"),\n\t\t\t\t\t\t\t\tParseJson: \u0026datadog.ObservabilityPipelineConfigProcessorGroupProcessorParseJsonArgs{\n\t\t\t\t\t\t\t\t\tField: pulumi.String(\"message\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\u0026datadog.ObservabilityPipelineConfigProcessorGroupProcessorArgs{\n\t\t\t\t\t\t\t\tId:          pulumi.String(\"filter-1\"),\n\t\t\t\t\t\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\t\t\t\t\t\tInclude:     pulumi.String(\"service:my-service\"),\n\t\t\t\t\t\t\t\tDisplayName: pulumi.String(\"filter\"),\n\t\t\t\t\t\t\t\tFilter:      \u0026datadog.ObservabilityPipelineConfigProcessorGroupProcessorFilterArgs{},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ObservabilityPipeline;\nimport com.pulumi.datadog.ObservabilityPipelineArgs;\nimport com.pulumi.datadog.inputs.ObservabilityPipelineConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new ObservabilityPipeline(\"test\", ObservabilityPipelineArgs.builder()\n            .name(\"test pipeline\")\n            .config(ObservabilityPipelineConfigArgs.builder()\n                .destinations(ObservabilityPipelineConfigDestinationArgs.builder()\n                    .datadogLogs(ObservabilityPipelineConfigDestinationDatadogLogArgs.builder()\n                        .build())\n                    .id(\"destination-1\")\n                    .inputs(\"processor-group-1\")\n                    .build())\n                .sources(ObservabilityPipelineConfigSourceArgs.builder()\n                    .id(\"source-1\")\n                    .datadogAgents(ObservabilityPipelineConfigSourceDatadogAgentArgs.builder()\n                        .tls(ObservabilityPipelineConfigSourceDatadogAgentTlsArgs.builder()\n                            .crtFile(\"/etc/certs/client.crt\")\n                            .keyFile(\"/etc/certs/client.key\")\n                            .caFile(\"/etc/certs/ca.crt\")\n                            .build())\n                        .build())\n                    .build())\n                .processorGroups(ObservabilityPipelineConfigProcessorGroupArgs.builder()\n                    .id(\"processor-group-1\")\n                    .enabled(true)\n                    .include(\"service:my-service\")\n                    .inputs(\"source-1\")\n                    .displayName(\"processor group\")\n                    .processors(                    \n                        ObservabilityPipelineConfigProcessorGroupProcessorArgs.builder()\n                            .id(\"parser-1\")\n                            .enabled(true)\n                            .include(\"service:my-service\")\n                            .displayName(\"json parser\")\n                            .parseJson(ObservabilityPipelineConfigProcessorGroupProcessorParseJsonArgs.builder()\n                                .field(\"message\")\n                                .build())\n                            .build(),\n                        ObservabilityPipelineConfigProcessorGroupProcessorArgs.builder()\n                            .id(\"filter-1\")\n                            .enabled(true)\n                            .include(\"service:my-service\")\n                            .displayName(\"filter\")\n                            .filter(ObservabilityPipelineConfigProcessorGroupProcessorFilterArgs.builder()\n                                .build())\n                            .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: datadog:ObservabilityPipeline\n    properties:\n      name: test pipeline\n      config:\n        destinations:\n          - datadogLogs:\n              - {}\n            id: destination-1\n            inputs:\n              - processor-group-1\n        sources:\n          - id: source-1\n            datadogAgents:\n              - tls:\n                  crtFile: /etc/certs/client.crt\n                  keyFile: /etc/certs/client.key\n                  caFile: /etc/certs/ca.crt\n        processorGroups:\n          - id: processor-group-1\n            enabled: true\n            include: service:my-service\n            inputs:\n              - source-1\n            displayName: processor group\n            processors:\n              - id: parser-1\n                enabled: true\n                include: service:my-service\n                displayName: json parser\n                parseJson:\n                  field: message\n              - id: filter-1\n                enabled: true\n                include: service:my-service\n                displayName: filter\n                filter: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/observabilityPipeline:ObservabilityPipeline example_pipeline 8beabbc4-1f4d-11f0-942b-da7ad0900001\n```\n\n",
            "properties": {
                "config": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfig:ObservabilityPipelineConfig",
                    "description": "Configuration for the pipeline.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The pipeline name.\n"
                }
            },
            "required": [
                "config",
                "name"
            ],
            "inputProperties": {
                "config": {
                    "$ref": "#/types/datadog:index/ObservabilityPipelineConfig:ObservabilityPipelineConfig",
                    "description": "Configuration for the pipeline.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The pipeline name.\n"
                }
            },
            "requiredInputs": [
                "config",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ObservabilityPipeline resources.\n",
                "properties": {
                    "config": {
                        "$ref": "#/types/datadog:index/ObservabilityPipelineConfig:ObservabilityPipelineConfig",
                        "description": "Configuration for the pipeline.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The pipeline name.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/onCallEscalationPolicy:OnCallEscalationPolicy": {
            "description": "Provides a Datadog On-Call escalation policy resource. This can be used to create and manage Datadog On-Call escalation policies.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst policyTest = new datadog.OnCallEscalationPolicy(\"policy_test\", {\n    name: \"Policy Name\",\n    resolvePageOnPolicyEnd: true,\n    retries: 3,\n    steps: [{\n        assignment: \"round-robin\",\n        escalateAfterSeconds: 300,\n        targets: [\n            {\n                team: \"00000000-aba2-0000-0000-000000000000\",\n            },\n            {\n                user: \"00000000-aba2-0000-0000-000000000000\",\n            },\n            {\n                schedule: \"00000000-aba2-0000-0000-000000000000\",\n            },\n        ],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\npolicy_test = datadog.OnCallEscalationPolicy(\"policy_test\",\n    name=\"Policy Name\",\n    resolve_page_on_policy_end=True,\n    retries=3,\n    steps=[{\n        \"assignment\": \"round-robin\",\n        \"escalate_after_seconds\": 300,\n        \"targets\": [\n            {\n                \"team\": \"00000000-aba2-0000-0000-000000000000\",\n            },\n            {\n                \"user\": \"00000000-aba2-0000-0000-000000000000\",\n            },\n            {\n                \"schedule\": \"00000000-aba2-0000-0000-000000000000\",\n            },\n        ],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var policyTest = new Datadog.OnCallEscalationPolicy(\"policy_test\", new()\n    {\n        Name = \"Policy Name\",\n        ResolvePageOnPolicyEnd = true,\n        Retries = 3,\n        Steps = new[]\n        {\n            new Datadog.Inputs.OnCallEscalationPolicyStepArgs\n            {\n                Assignment = \"round-robin\",\n                EscalateAfterSeconds = 300,\n                Targets = new[]\n                {\n                    new Datadog.Inputs.OnCallEscalationPolicyStepTargetArgs\n                    {\n                        Team = \"00000000-aba2-0000-0000-000000000000\",\n                    },\n                    new Datadog.Inputs.OnCallEscalationPolicyStepTargetArgs\n                    {\n                        User = \"00000000-aba2-0000-0000-000000000000\",\n                    },\n                    new Datadog.Inputs.OnCallEscalationPolicyStepTargetArgs\n                    {\n                        Schedule = \"00000000-aba2-0000-0000-000000000000\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewOnCallEscalationPolicy(ctx, \"policy_test\", \u0026datadog.OnCallEscalationPolicyArgs{\n\t\t\tName:                   pulumi.String(\"Policy Name\"),\n\t\t\tResolvePageOnPolicyEnd: pulumi.Bool(true),\n\t\t\tRetries:                pulumi.Int(3),\n\t\t\tSteps: datadog.OnCallEscalationPolicyStepArray{\n\t\t\t\t\u0026datadog.OnCallEscalationPolicyStepArgs{\n\t\t\t\t\tAssignment:           pulumi.String(\"round-robin\"),\n\t\t\t\t\tEscalateAfterSeconds: pulumi.Int(300),\n\t\t\t\t\tTargets: datadog.OnCallEscalationPolicyStepTargetArray{\n\t\t\t\t\t\t\u0026datadog.OnCallEscalationPolicyStepTargetArgs{\n\t\t\t\t\t\t\tTeam: pulumi.String(\"00000000-aba2-0000-0000-000000000000\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026datadog.OnCallEscalationPolicyStepTargetArgs{\n\t\t\t\t\t\t\tUser: pulumi.String(\"00000000-aba2-0000-0000-000000000000\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026datadog.OnCallEscalationPolicyStepTargetArgs{\n\t\t\t\t\t\t\tSchedule: pulumi.String(\"00000000-aba2-0000-0000-000000000000\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.OnCallEscalationPolicy;\nimport com.pulumi.datadog.OnCallEscalationPolicyArgs;\nimport com.pulumi.datadog.inputs.OnCallEscalationPolicyStepArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var policyTest = new OnCallEscalationPolicy(\"policyTest\", OnCallEscalationPolicyArgs.builder()\n            .name(\"Policy Name\")\n            .resolvePageOnPolicyEnd(true)\n            .retries(3)\n            .steps(OnCallEscalationPolicyStepArgs.builder()\n                .assignment(\"round-robin\")\n                .escalateAfterSeconds(300)\n                .targets(                \n                    OnCallEscalationPolicyStepTargetArgs.builder()\n                        .team(\"00000000-aba2-0000-0000-000000000000\")\n                        .build(),\n                    OnCallEscalationPolicyStepTargetArgs.builder()\n                        .user(\"00000000-aba2-0000-0000-000000000000\")\n                        .build(),\n                    OnCallEscalationPolicyStepTargetArgs.builder()\n                        .schedule(\"00000000-aba2-0000-0000-000000000000\")\n                        .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  policyTest:\n    type: datadog:OnCallEscalationPolicy\n    name: policy_test\n    properties:\n      name: Policy Name\n      resolvePageOnPolicyEnd: true\n      retries: 3\n      steps:\n        - assignment: round-robin\n          escalateAfterSeconds: 300\n          targets:\n            - team: 00000000-aba2-0000-0000-000000000000\n            - user: 00000000-aba2-0000-0000-000000000000\n            - schedule: 00000000-aba2-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nImport an existing\u003cspan pulumi-lang-nodejs=\" onCallEscalationPolicy\n\" pulumi-lang-dotnet=\" OnCallEscalationPolicy\n\" pulumi-lang-go=\" onCallEscalationPolicy\n\" pulumi-lang-python=\" on_call_escalation_policy\n\" pulumi-lang-yaml=\" onCallEscalationPolicy\n\" pulumi-lang-java=\" onCallEscalationPolicy\n\"\u003e onCallEscalationPolicy\n\u003c/span\u003e\n```sh\n$ pulumi import datadog:index/onCallEscalationPolicy:OnCallEscalationPolicy policy_test \"b03a07d5-49da-43e9-83b4-5d84969b588b\"\n```\n\n",
            "properties": {
                "name": {
                    "type": "string",
                    "description": "A human-readable name for the escalation policy.\n"
                },
                "resolvePageOnPolicyEnd": {
                    "type": "boolean",
                    "description": "If true, pages will be automatically resolved if unacknowledged after the final step. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "retries": {
                    "type": "integer",
                    "description": "If set, policy will be retried this many times after the final step. Must be in the range 0-10. Value must be between 0 and 10. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallEscalationPolicyStep:OnCallEscalationPolicyStep"
                    },
                    "description": "List of steps for the escalation policy.\n"
                },
                "teams": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of team ids associated with the escalation policy.\n"
                }
            },
            "required": [
                "name",
                "resolvePageOnPolicyEnd",
                "retries",
                "steps",
                "teams"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "A human-readable name for the escalation policy.\n"
                },
                "resolvePageOnPolicyEnd": {
                    "type": "boolean",
                    "description": "If true, pages will be automatically resolved if unacknowledged after the final step. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "retries": {
                    "type": "integer",
                    "description": "If set, policy will be retried this many times after the final step. Must be in the range 0-10. Value must be between 0 and 10. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "steps": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallEscalationPolicyStep:OnCallEscalationPolicyStep"
                    },
                    "description": "List of steps for the escalation policy.\n"
                },
                "teams": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of team ids associated with the escalation policy.\n"
                }
            },
            "requiredInputs": [
                "name",
                "steps"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OnCallEscalationPolicy resources.\n",
                "properties": {
                    "name": {
                        "type": "string",
                        "description": "A human-readable name for the escalation policy.\n"
                    },
                    "resolvePageOnPolicyEnd": {
                        "type": "boolean",
                        "description": "If true, pages will be automatically resolved if unacknowledged after the final step. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "retries": {
                        "type": "integer",
                        "description": "If set, policy will be retried this many times after the final step. Must be in the range 0-10. Value must be between 0 and 10. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                    },
                    "steps": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/OnCallEscalationPolicyStep:OnCallEscalationPolicyStep"
                        },
                        "description": "List of steps for the escalation policy.\n"
                    },
                    "teams": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of team ids associated with the escalation policy.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/onCallSchedule:OnCallSchedule": {
            "description": "Provides a Datadog On-Call schedule resource. This can be used to create and manage Datadog On-Call schedules.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst test = new datadog.OnCallSchedule(\"test\", {\n    name: \"Team A On-Call\",\n    timeZone: \"America/New_York\",\n    teams: [\"00000000-aba2-0000-0000-000000000000\"],\n    layers: [\n        {\n            name: \"Primary On-Call Layer\",\n            effectiveDate: \"2025-01-01T00:00:00Z\",\n            endDate: \"2026-01-01T00:00:00Z\",\n            rotationStart: \"2025-01-01T00:00:00Z\",\n            interval: [{\n                days: 1,\n                seconds: 300,\n            }],\n            users: [\"00000000-aba1-0000-0000-000000000000\"],\n            restrictions: [{\n                endDay: \"monday\",\n                endTime: \"17:00:00\",\n                startDay: \"monday\",\n                startTime: \"09:00:00\",\n            }],\n        },\n        {\n            name: \"Asia-Pacific On-Call Layer\",\n            effectiveDate: \"2025-01-01T00:00:00Z\",\n            rotationStart: \"2025-01-01T00:00:00Z\",\n            timeZone: \"Asia/Tokyo\",\n            interval: [{\n                days: 7,\n            }],\n            users: [\"00000000-aba1-0000-0000-000000000001\"],\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\ntest = datadog.OnCallSchedule(\"test\",\n    name=\"Team A On-Call\",\n    time_zone=\"America/New_York\",\n    teams=[\"00000000-aba2-0000-0000-000000000000\"],\n    layers=[\n        {\n            \"name\": \"Primary On-Call Layer\",\n            \"effective_date\": \"2025-01-01T00:00:00Z\",\n            \"end_date\": \"2026-01-01T00:00:00Z\",\n            \"rotation_start\": \"2025-01-01T00:00:00Z\",\n            \"interval\": [{\n                \"days\": 1,\n                \"seconds\": 300,\n            }],\n            \"users\": [\"00000000-aba1-0000-0000-000000000000\"],\n            \"restrictions\": [{\n                \"end_day\": \"monday\",\n                \"end_time\": \"17:00:00\",\n                \"start_day\": \"monday\",\n                \"start_time\": \"09:00:00\",\n            }],\n        },\n        {\n            \"name\": \"Asia-Pacific On-Call Layer\",\n            \"effective_date\": \"2025-01-01T00:00:00Z\",\n            \"rotation_start\": \"2025-01-01T00:00:00Z\",\n            \"time_zone\": \"Asia/Tokyo\",\n            \"interval\": [{\n                \"days\": 7,\n            }],\n            \"users\": [\"00000000-aba1-0000-0000-000000000001\"],\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = new Datadog.OnCallSchedule(\"test\", new()\n    {\n        Name = \"Team A On-Call\",\n        TimeZone = \"America/New_York\",\n        Teams = new[]\n        {\n            \"00000000-aba2-0000-0000-000000000000\",\n        },\n        Layers = new[]\n        {\n            new Datadog.Inputs.OnCallScheduleLayerArgs\n            {\n                Name = \"Primary On-Call Layer\",\n                EffectiveDate = \"2025-01-01T00:00:00Z\",\n                EndDate = \"2026-01-01T00:00:00Z\",\n                RotationStart = \"2025-01-01T00:00:00Z\",\n                Interval = new[]\n                {\n                    \n                    {\n                        { \"days\", 1 },\n                        { \"seconds\", 300 },\n                    },\n                },\n                Users = new[]\n                {\n                    \"00000000-aba1-0000-0000-000000000000\",\n                },\n                Restrictions = new[]\n                {\n                    new Datadog.Inputs.OnCallScheduleLayerRestrictionArgs\n                    {\n                        EndDay = \"monday\",\n                        EndTime = \"17:00:00\",\n                        StartDay = \"monday\",\n                        StartTime = \"09:00:00\",\n                    },\n                },\n            },\n            new Datadog.Inputs.OnCallScheduleLayerArgs\n            {\n                Name = \"Asia-Pacific On-Call Layer\",\n                EffectiveDate = \"2025-01-01T00:00:00Z\",\n                RotationStart = \"2025-01-01T00:00:00Z\",\n                TimeZone = \"Asia/Tokyo\",\n                Interval = new[]\n                {\n                    \n                    {\n                        { \"days\", 7 },\n                    },\n                },\n                Users = new[]\n                {\n                    \"00000000-aba1-0000-0000-000000000001\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewOnCallSchedule(ctx, \"test\", \u0026datadog.OnCallScheduleArgs{\n\t\t\tName:     pulumi.String(\"Team A On-Call\"),\n\t\t\tTimeZone: pulumi.String(\"America/New_York\"),\n\t\t\tTeams: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"00000000-aba2-0000-0000-000000000000\"),\n\t\t\t},\n\t\t\tLayers: datadog.OnCallScheduleLayerArray{\n\t\t\t\t\u0026datadog.OnCallScheduleLayerArgs{\n\t\t\t\t\tName:          pulumi.String(\"Primary On-Call Layer\"),\n\t\t\t\t\tEffectiveDate: pulumi.String(\"2025-01-01T00:00:00Z\"),\n\t\t\t\t\tEndDate:       pulumi.String(\"2026-01-01T00:00:00Z\"),\n\t\t\t\t\tRotationStart: pulumi.String(\"2025-01-01T00:00:00Z\"),\n\t\t\t\t\tInterval: datadog.OnCallScheduleLayerIntervalArgs{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"days\":    1,\n\t\t\t\t\t\t\t\"seconds\": 300,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"00000000-aba1-0000-0000-000000000000\"),\n\t\t\t\t\t},\n\t\t\t\t\tRestrictions: datadog.OnCallScheduleLayerRestrictionArray{\n\t\t\t\t\t\t\u0026datadog.OnCallScheduleLayerRestrictionArgs{\n\t\t\t\t\t\t\tEndDay:    pulumi.String(\"monday\"),\n\t\t\t\t\t\t\tEndTime:   pulumi.String(\"17:00:00\"),\n\t\t\t\t\t\t\tStartDay:  pulumi.String(\"monday\"),\n\t\t\t\t\t\t\tStartTime: pulumi.String(\"09:00:00\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.OnCallScheduleLayerArgs{\n\t\t\t\t\tName:          pulumi.String(\"Asia-Pacific On-Call Layer\"),\n\t\t\t\t\tEffectiveDate: pulumi.String(\"2025-01-01T00:00:00Z\"),\n\t\t\t\t\tRotationStart: pulumi.String(\"2025-01-01T00:00:00Z\"),\n\t\t\t\t\tTimeZone:      pulumi.String(\"Asia/Tokyo\"),\n\t\t\t\t\tInterval: datadog.OnCallScheduleLayerIntervalArgs{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"days\": 7,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tUsers: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"00000000-aba1-0000-0000-000000000001\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.OnCallSchedule;\nimport com.pulumi.datadog.OnCallScheduleArgs;\nimport com.pulumi.datadog.inputs.OnCallScheduleLayerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new OnCallSchedule(\"test\", OnCallScheduleArgs.builder()\n            .name(\"Team A On-Call\")\n            .timeZone(\"America/New_York\")\n            .teams(\"00000000-aba2-0000-0000-000000000000\")\n            .layers(            \n                OnCallScheduleLayerArgs.builder()\n                    .name(\"Primary On-Call Layer\")\n                    .effectiveDate(\"2025-01-01T00:00:00Z\")\n                    .endDate(\"2026-01-01T00:00:00Z\")\n                    .rotationStart(\"2025-01-01T00:00:00Z\")\n                    .interval(OnCallScheduleLayerIntervalArgs.builder()\n                        .days(1)\n                        .seconds(300)\n                        .build())\n                    .users(\"00000000-aba1-0000-0000-000000000000\")\n                    .restrictions(OnCallScheduleLayerRestrictionArgs.builder()\n                        .endDay(\"monday\")\n                        .endTime(\"17:00:00\")\n                        .startDay(\"monday\")\n                        .startTime(\"09:00:00\")\n                        .build())\n                    .build(),\n                OnCallScheduleLayerArgs.builder()\n                    .name(\"Asia-Pacific On-Call Layer\")\n                    .effectiveDate(\"2025-01-01T00:00:00Z\")\n                    .rotationStart(\"2025-01-01T00:00:00Z\")\n                    .timeZone(\"Asia/Tokyo\")\n                    .interval(OnCallScheduleLayerIntervalArgs.builder()\n                        .days(7)\n                        .build())\n                    .users(\"00000000-aba1-0000-0000-000000000001\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: datadog:OnCallSchedule\n    properties:\n      name: Team A On-Call\n      timeZone: America/New_York\n      teams:\n        - 00000000-aba2-0000-0000-000000000000\n      layers:\n        - name: Primary On-Call Layer\n          effectiveDate: 2025-01-01T00:00:00Z\n          endDate: 2026-01-01T00:00:00Z\n          rotationStart: 2025-01-01T00:00:00Z\n          interval:\n            - days: 1\n              seconds: 300\n          users:\n            - 00000000-aba1-0000-0000-000000000000\n          restrictions:\n            - endDay: monday\n              endTime: 17:00:00\n              startDay: monday\n              startTime: 09:00:00\n        - name: Asia-Pacific On-Call Layer\n          effectiveDate: 2025-01-01T00:00:00Z\n          rotationStart: 2025-01-01T00:00:00Z\n          timeZone: Asia/Tokyo\n          interval:\n            - days: 7\n          users:\n            - 00000000-aba1-0000-0000-000000000001\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nImport an existing\u003cspan pulumi-lang-nodejs=\" onCallSchedule\n\" pulumi-lang-dotnet=\" OnCallSchedule\n\" pulumi-lang-go=\" onCallSchedule\n\" pulumi-lang-python=\" on_call_schedule\n\" pulumi-lang-yaml=\" onCallSchedule\n\" pulumi-lang-java=\" onCallSchedule\n\"\u003e onCallSchedule\n\u003c/span\u003e\n```sh\n$ pulumi import datadog:index/onCallSchedule:OnCallSchedule test \"b03a07d5-49da-43e9-83b4-5d84969b588b\"\n```\n\n",
            "properties": {
                "layers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallScheduleLayer:OnCallScheduleLayer"
                    },
                    "description": "List of layers for the schedule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A human-readable name for the new schedule.\n"
                },
                "teams": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of team ids associated with the schedule.\n"
                },
                "timeZone": {
                    "type": "string",
                    "description": "The time zone in which the schedule is defined.\n"
                }
            },
            "required": [
                "layers",
                "name",
                "teams",
                "timeZone"
            ],
            "inputProperties": {
                "layers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallScheduleLayer:OnCallScheduleLayer"
                    },
                    "description": "List of layers for the schedule.\n"
                },
                "name": {
                    "type": "string",
                    "description": "A human-readable name for the new schedule.\n"
                },
                "teams": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of team ids associated with the schedule.\n"
                },
                "timeZone": {
                    "type": "string",
                    "description": "The time zone in which the schedule is defined.\n"
                }
            },
            "requiredInputs": [
                "layers",
                "name",
                "timeZone"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OnCallSchedule resources.\n",
                "properties": {
                    "layers": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/OnCallScheduleLayer:OnCallScheduleLayer"
                        },
                        "description": "List of layers for the schedule.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "A human-readable name for the new schedule.\n"
                    },
                    "teams": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of team ids associated with the schedule.\n"
                    },
                    "timeZone": {
                        "type": "string",
                        "description": "The time zone in which the schedule is defined.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/onCallTeamRoutingRules:OnCallTeamRoutingRules": {
            "description": "Provides a Datadog On-Call team routing rules resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst teamRulesTest = new datadog.OnCallTeamRoutingRules(\"team_rules_test\", {\n    teamId: \"00000000-aba2-0000-0000-000000000000\",\n    rules: [\n        {\n            query: \"tags.service:test\",\n            actions: [{\n                sendSlackMessage: [{\n                    workspace: \"workspace\",\n                    channel: \"channel\",\n                }],\n            }],\n            timeRestrictions: [{\n                timeZone: \"America/New_York\",\n                restrictions: [{\n                    endDay: \"monday\",\n                    endTime: \"17:00:00\",\n                    startDay: \"monday\",\n                    startTime: \"09:00:00\",\n                }],\n            }],\n        },\n        {\n            escalationPolicy: \"00000000-aba2-0000-0000-000000000000\",\n            urgency: \"dynamic\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nteam_rules_test = datadog.OnCallTeamRoutingRules(\"team_rules_test\",\n    team_id=\"00000000-aba2-0000-0000-000000000000\",\n    rules=[\n        {\n            \"query\": \"tags.service:test\",\n            \"actions\": [{\n                \"send_slack_message\": [{\n                    \"workspace\": \"workspace\",\n                    \"channel\": \"channel\",\n                }],\n            }],\n            \"time_restrictions\": [{\n                \"timeZone\": \"America/New_York\",\n                \"restrictions\": [{\n                    \"endDay\": \"monday\",\n                    \"endTime\": \"17:00:00\",\n                    \"startDay\": \"monday\",\n                    \"startTime\": \"09:00:00\",\n                }],\n            }],\n        },\n        {\n            \"escalation_policy\": \"00000000-aba2-0000-0000-000000000000\",\n            \"urgency\": \"dynamic\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var teamRulesTest = new Datadog.OnCallTeamRoutingRules(\"team_rules_test\", new()\n    {\n        TeamId = \"00000000-aba2-0000-0000-000000000000\",\n        Rules = new[]\n        {\n            new Datadog.Inputs.OnCallTeamRoutingRulesRuleArgs\n            {\n                Query = \"tags.service:test\",\n                Actions = new[]\n                {\n                    new Datadog.Inputs.OnCallTeamRoutingRulesRuleActionArgs\n                    {\n                        SendSlackMessage = new[]\n                        {\n                            \n                            {\n                                { \"workspace\", \"workspace\" },\n                                { \"channel\", \"channel\" },\n                            },\n                        },\n                    },\n                },\n                TimeRestrictions = new[]\n                {\n                    \n                    {\n                        { \"timeZone\", \"America/New_York\" },\n                        { \"restrictions\", new[]\n                        {\n                            \n                            {\n                                { \"endDay\", \"monday\" },\n                                { \"endTime\", \"17:00:00\" },\n                                { \"startDay\", \"monday\" },\n                                { \"startTime\", \"09:00:00\" },\n                            },\n                        } },\n                    },\n                },\n            },\n            new Datadog.Inputs.OnCallTeamRoutingRulesRuleArgs\n            {\n                EscalationPolicy = \"00000000-aba2-0000-0000-000000000000\",\n                Urgency = \"dynamic\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewOnCallTeamRoutingRules(ctx, \"team_rules_test\", \u0026datadog.OnCallTeamRoutingRulesArgs{\n\t\t\tTeamId: pulumi.String(\"00000000-aba2-0000-0000-000000000000\"),\n\t\t\tRules: datadog.OnCallTeamRoutingRulesRuleArray{\n\t\t\t\t\u0026datadog.OnCallTeamRoutingRulesRuleArgs{\n\t\t\t\t\tQuery: pulumi.String(\"tags.service:test\"),\n\t\t\t\t\tActions: datadog.OnCallTeamRoutingRulesRuleActionArray{\n\t\t\t\t\t\t\u0026datadog.OnCallTeamRoutingRulesRuleActionArgs{\n\t\t\t\t\t\t\tSendSlackMessage: datadog.OnCallTeamRoutingRulesRuleActionSendSlackMessageArgs{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"workspace\": \"workspace\",\n\t\t\t\t\t\t\t\t\t\"channel\":   \"channel\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tTimeRestrictions: datadog.OnCallTeamRoutingRulesRuleTimeRestrictionsArgs{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"timeZone\": \"America/New_York\",\n\t\t\t\t\t\t\t\"restrictions\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"endDay\":    \"monday\",\n\t\t\t\t\t\t\t\t\t\"endTime\":   \"17:00:00\",\n\t\t\t\t\t\t\t\t\t\"startDay\":  \"monday\",\n\t\t\t\t\t\t\t\t\t\"startTime\": \"09:00:00\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.OnCallTeamRoutingRulesRuleArgs{\n\t\t\t\t\tEscalationPolicy: pulumi.String(\"00000000-aba2-0000-0000-000000000000\"),\n\t\t\t\t\tUrgency:          pulumi.String(\"dynamic\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.OnCallTeamRoutingRules;\nimport com.pulumi.datadog.OnCallTeamRoutingRulesArgs;\nimport com.pulumi.datadog.inputs.OnCallTeamRoutingRulesRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var teamRulesTest = new OnCallTeamRoutingRules(\"teamRulesTest\", OnCallTeamRoutingRulesArgs.builder()\n            .teamId(\"00000000-aba2-0000-0000-000000000000\")\n            .rules(            \n                OnCallTeamRoutingRulesRuleArgs.builder()\n                    .query(\"tags.service:test\")\n                    .actions(OnCallTeamRoutingRulesRuleActionArgs.builder()\n                        .sendSlackMessage(OnCallTeamRoutingRulesRuleActionSendSlackMessageArgs.builder()\n                            .workspace(\"workspace\")\n                            .channel(\"channel\")\n                            .build())\n                        .build())\n                    .timeRestrictions(OnCallTeamRoutingRulesRuleTimeRestrictionsArgs.builder()\n                        .timeZone(\"America/New_York\")\n                        .restrictions(OnCallTeamRoutingRulesRuleTimeRestrictionsRestrictionArgs.builder()\n                            .endDay(\"monday\")\n                            .endTime(\"17:00:00\")\n                            .startDay(\"monday\")\n                            .startTime(\"09:00:00\")\n                            .build())\n                        .build())\n                    .build(),\n                OnCallTeamRoutingRulesRuleArgs.builder()\n                    .escalationPolicy(\"00000000-aba2-0000-0000-000000000000\")\n                    .urgency(\"dynamic\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  teamRulesTest:\n    type: datadog:OnCallTeamRoutingRules\n    name: team_rules_test\n    properties:\n      teamId: 00000000-aba2-0000-0000-000000000000\n      rules:\n        - query: tags.service:test\n          actions:\n            - sendSlackMessage:\n                - workspace: workspace\n                  channel: channel\n          timeRestrictions:\n            - timeZone: America/New_York\n              restrictions:\n                - endDay: monday\n                  endTime: 17:00:00\n                  startDay: monday\n                  startTime: 09:00:00\n        - escalationPolicy: 00000000-aba2-0000-0000-000000000000\n          urgency: dynamic\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nImport existing\u003cspan pulumi-lang-nodejs=\" onCallTeamRoutingRules\n\" pulumi-lang-dotnet=\" OnCallTeamRoutingRules\n\" pulumi-lang-go=\" onCallTeamRoutingRules\n\" pulumi-lang-python=\" on_call_team_routing_rules\n\" pulumi-lang-yaml=\" onCallTeamRoutingRules\n\" pulumi-lang-java=\" onCallTeamRoutingRules\n\"\u003e onCallTeamRoutingRules\n\u003c/span\u003e\n```sh\n$ pulumi import datadog:index/onCallTeamRoutingRules:OnCallTeamRoutingRules test \"b03a07d5-49da-43e9-83b4-5d84969b588b\"\n```\n\n",
            "properties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallTeamRoutingRulesRule:OnCallTeamRoutingRulesRule"
                    },
                    "description": "List of team routing rules.\n"
                },
                "teamId": {
                    "type": "string",
                    "description": "ID of the team to associate the routing rules with.\n"
                }
            },
            "required": [
                "teamId"
            ],
            "inputProperties": {
                "rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/OnCallTeamRoutingRulesRule:OnCallTeamRoutingRulesRule"
                    },
                    "description": "List of team routing rules.\n"
                },
                "teamId": {
                    "type": "string",
                    "description": "ID of the team to associate the routing rules with.\n"
                }
            },
            "requiredInputs": [
                "teamId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OnCallTeamRoutingRules resources.\n",
                "properties": {
                    "rules": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/OnCallTeamRoutingRulesRule:OnCallTeamRoutingRulesRule"
                        },
                        "description": "List of team routing rules.\n"
                    },
                    "teamId": {
                        "type": "string",
                        "description": "ID of the team to associate the routing rules with.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/onCallUserNotificationChannel:OnCallUserNotificationChannel": {
            "description": "Provides a Datadog On-Call user notification channel resource.\n",
            "properties": {
                "email": {
                    "$ref": "#/types/datadog:index/OnCallUserNotificationChannelEmail:OnCallUserNotificationChannelEmail"
                },
                "phone": {
                    "$ref": "#/types/datadog:index/OnCallUserNotificationChannelPhone:OnCallUserNotificationChannelPhone"
                },
                "userId": {
                    "type": "string",
                    "description": "ID of the user to associate the notification channel with.\n"
                }
            },
            "required": [
                "userId"
            ],
            "inputProperties": {
                "email": {
                    "$ref": "#/types/datadog:index/OnCallUserNotificationChannelEmail:OnCallUserNotificationChannelEmail"
                },
                "phone": {
                    "$ref": "#/types/datadog:index/OnCallUserNotificationChannelPhone:OnCallUserNotificationChannelPhone"
                },
                "userId": {
                    "type": "string",
                    "description": "ID of the user to associate the notification channel with.\n"
                }
            },
            "requiredInputs": [
                "userId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OnCallUserNotificationChannel resources.\n",
                "properties": {
                    "email": {
                        "$ref": "#/types/datadog:index/OnCallUserNotificationChannelEmail:OnCallUserNotificationChannelEmail"
                    },
                    "phone": {
                        "$ref": "#/types/datadog:index/OnCallUserNotificationChannelPhone:OnCallUserNotificationChannelPhone"
                    },
                    "userId": {
                        "type": "string",
                        "description": "ID of the user to associate the notification channel with.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/onCallUserNotificationRule:OnCallUserNotificationRule": {
            "description": "Provides a Datadog On-Call user notification rule resource.\n",
            "properties": {
                "category": {
                    "type": "string",
                    "description": "Notification category to associate the rule with. Valid values are \u003cspan pulumi-lang-nodejs=\"`highUrgency`\" pulumi-lang-dotnet=\"`HighUrgency`\" pulumi-lang-go=\"`highUrgency`\" pulumi-lang-python=\"`high_urgency`\" pulumi-lang-yaml=\"`highUrgency`\" pulumi-lang-java=\"`highUrgency`\"\u003e`highUrgency`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lowUrgency`\" pulumi-lang-dotnet=\"`LowUrgency`\" pulumi-lang-go=\"`lowUrgency`\" pulumi-lang-python=\"`low_urgency`\" pulumi-lang-yaml=\"`lowUrgency`\" pulumi-lang-java=\"`lowUrgency`\"\u003e`lowUrgency`\u003c/span\u003e.\n"
                },
                "channelId": {
                    "type": "string",
                    "description": "ID of the notification channel to associate the notification rule with.\n"
                },
                "delayMinutes": {
                    "type": "integer",
                    "description": "Number of minutes to elapse before this rule is evaluated.  \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e indicates immediate evaluation.\n"
                },
                "phone": {
                    "$ref": "#/types/datadog:index/OnCallUserNotificationRulePhone:OnCallUserNotificationRulePhone"
                },
                "userId": {
                    "type": "string",
                    "description": "ID of the user to associate the notification rule with.\n"
                }
            },
            "required": [
                "category",
                "channelId",
                "delayMinutes",
                "userId"
            ],
            "inputProperties": {
                "category": {
                    "type": "string",
                    "description": "Notification category to associate the rule with. Valid values are \u003cspan pulumi-lang-nodejs=\"`highUrgency`\" pulumi-lang-dotnet=\"`HighUrgency`\" pulumi-lang-go=\"`highUrgency`\" pulumi-lang-python=\"`high_urgency`\" pulumi-lang-yaml=\"`highUrgency`\" pulumi-lang-java=\"`highUrgency`\"\u003e`highUrgency`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lowUrgency`\" pulumi-lang-dotnet=\"`LowUrgency`\" pulumi-lang-go=\"`lowUrgency`\" pulumi-lang-python=\"`low_urgency`\" pulumi-lang-yaml=\"`lowUrgency`\" pulumi-lang-java=\"`lowUrgency`\"\u003e`lowUrgency`\u003c/span\u003e.\n"
                },
                "channelId": {
                    "type": "string",
                    "description": "ID of the notification channel to associate the notification rule with.\n"
                },
                "delayMinutes": {
                    "type": "integer",
                    "description": "Number of minutes to elapse before this rule is evaluated.  \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e indicates immediate evaluation.\n"
                },
                "phone": {
                    "$ref": "#/types/datadog:index/OnCallUserNotificationRulePhone:OnCallUserNotificationRulePhone"
                },
                "userId": {
                    "type": "string",
                    "description": "ID of the user to associate the notification rule with.\n"
                }
            },
            "requiredInputs": [
                "category",
                "channelId",
                "delayMinutes",
                "userId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OnCallUserNotificationRule resources.\n",
                "properties": {
                    "category": {
                        "type": "string",
                        "description": "Notification category to associate the rule with. Valid values are \u003cspan pulumi-lang-nodejs=\"`highUrgency`\" pulumi-lang-dotnet=\"`HighUrgency`\" pulumi-lang-go=\"`highUrgency`\" pulumi-lang-python=\"`high_urgency`\" pulumi-lang-yaml=\"`highUrgency`\" pulumi-lang-java=\"`highUrgency`\"\u003e`highUrgency`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`lowUrgency`\" pulumi-lang-dotnet=\"`LowUrgency`\" pulumi-lang-go=\"`lowUrgency`\" pulumi-lang-python=\"`low_urgency`\" pulumi-lang-yaml=\"`lowUrgency`\" pulumi-lang-java=\"`lowUrgency`\"\u003e`lowUrgency`\u003c/span\u003e.\n"
                    },
                    "channelId": {
                        "type": "string",
                        "description": "ID of the notification channel to associate the notification rule with.\n"
                    },
                    "delayMinutes": {
                        "type": "integer",
                        "description": "Number of minutes to elapse before this rule is evaluated.  \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e indicates immediate evaluation.\n"
                    },
                    "phone": {
                        "$ref": "#/types/datadog:index/OnCallUserNotificationRulePhone:OnCallUserNotificationRulePhone"
                    },
                    "userId": {
                        "type": "string",
                        "description": "ID of the user to associate the notification rule with.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/openapiApi:OpenapiApi": {
            "description": "Deprecated: use the \u003cspan pulumi-lang-nodejs=\"`datadog.SoftwareCatalog`\" pulumi-lang-dotnet=\"`datadog.SoftwareCatalog`\" pulumi-lang-go=\"`SoftwareCatalog`\" pulumi-lang-python=\"`SoftwareCatalog`\" pulumi-lang-yaml=\"`datadog.SoftwareCatalog`\" pulumi-lang-java=\"`datadog.SoftwareCatalog`\"\u003e`datadog.SoftwareCatalog`\u003c/span\u003e resource instead. Provides a Datadog OpenAPI resource. This can be used to synchronize Datadog's [API catalog](https://docs.datadoghq.com/api_catalog/) with an [OpenAPI](https://www.openapis.org/) specifications file.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\nimport * as std from \"@pulumi/std\";\n\n// Uploads an OpenAPI file from the given local path to Datadog's API catalog\nconst my_api = new datadog.OpenapiApi(\"my-api\", {spec: std.index.file({\n    input: \"./path/my-api.yaml\",\n}).result});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\nimport pulumi_std as std\n\n# Uploads an OpenAPI file from the given local path to Datadog's API catalog\nmy_api = datadog.OpenapiApi(\"my-api\", spec=std.index.file(input=\"./path/my-api.yaml\")[\"result\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Uploads an OpenAPI file from the given local path to Datadog's API catalog\n    var my_api = new Datadog.OpenapiApi(\"my-api\", new()\n    {\n        Spec = Std.Index.File.Invoke(new()\n        {\n            Input = \"./path/my-api.yaml\",\n        }).Result,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinvokeFile, err := std.File(ctx, map[string]interface{}{\n\t\t\t\"input\": \"./path/my-api.yaml\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Uploads an OpenAPI file from the given local path to Datadog's API catalog\n\t\t_, err = datadog.NewOpenapiApi(ctx, \"my-api\", \u0026datadog.OpenapiApiArgs{\n\t\t\tSpec: invokeFile.Result,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.OpenapiApi;\nimport com.pulumi.datadog.OpenapiApiArgs;\nimport com.pulumi.std.StdFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Uploads an OpenAPI file from the given local path to Datadog's API catalog\n        var my_api = new OpenapiApi(\"my-api\", OpenapiApiArgs.builder()\n            .spec(StdFunctions.file(Map.of(\"input\", \"./path/my-api.yaml\")).result())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Uploads an OpenAPI file from the given local path to Datadog's API catalog\n  my-api:\n    type: datadog:OpenapiApi\n    properties:\n      spec:\n        fn::invoke:\n          function: std:file\n          arguments:\n            input: ./path/my-api.yaml\n          return: result\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/openapiApi:OpenapiApi new_list \"90646597-5fdb-4a17-a240-647003f8c028\"\n```\n\n",
            "properties": {
                "spec": {
                    "type": "string",
                    "description": "The textual content of the OpenAPI specification. Use `file()` in order to reference another file in the repository (see exmaple).\n"
                }
            },
            "required": [
                "spec"
            ],
            "inputProperties": {
                "spec": {
                    "type": "string",
                    "description": "The textual content of the OpenAPI specification. Use `file()` in order to reference another file in the repository (see exmaple).\n"
                }
            },
            "requiredInputs": [
                "spec"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OpenapiApi resources.\n",
                "properties": {
                    "spec": {
                        "type": "string",
                        "description": "The textual content of the OpenAPI specification. Use `file()` in order to reference another file in the repository (see exmaple).\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/orgConnection:OrgConnection": {
            "description": "Provides a Datadog Org Connection resource. Org Connections make data from a source org available in the destination org for selected connection data types (for example, logs or metrics). Org Connections can only be created from a source org to a specified destination org\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new org connection resource\nconst foo = new datadog.OrgConnection(\"foo\", {\n    connectionTypes: [\n        \"metrics\",\n        \"logs\",\n    ],\n    sinkOrgId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new org connection resource\nfoo = datadog.OrgConnection(\"foo\",\n    connection_types=[\n        \"metrics\",\n        \"logs\",\n    ],\n    sink_org_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new org connection resource\n    var foo = new Datadog.OrgConnection(\"foo\", new()\n    {\n        ConnectionTypes = new[]\n        {\n            \"metrics\",\n            \"logs\",\n        },\n        SinkOrgId = \"00000000-0000-0000-0000-000000000000\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new org connection resource\n\t\t_, err := datadog.NewOrgConnection(ctx, \"foo\", \u0026datadog.OrgConnectionArgs{\n\t\t\tConnectionTypes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"metrics\"),\n\t\t\t\tpulumi.String(\"logs\"),\n\t\t\t},\n\t\t\tSinkOrgId: pulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.OrgConnection;\nimport com.pulumi.datadog.OrgConnectionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new org connection resource\n        var foo = new OrgConnection(\"foo\", OrgConnectionArgs.builder()\n            .connectionTypes(            \n                \"metrics\",\n                \"logs\")\n            .sinkOrgId(\"00000000-0000-0000-0000-000000000000\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new org connection resource\n  foo:\n    type: datadog:OrgConnection\n    properties:\n      connectionTypes:\n        - metrics\n        - logs\n      sinkOrgId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/orgConnection:OrgConnection foo \"\u003corg_connection_id\u003e\"\n```\n\n",
            "properties": {
                "connectionTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Set of connection types to enable for this connection (., metrics, logs).\n"
                },
                "createdAt": {
                    "type": "string",
                    "description": "Timestamp when the connection was created (RFC 3339).\n"
                },
                "createdBy": {
                    "type": "string",
                    "description": "Creator user ID (UUID).\n"
                },
                "sinkOrgId": {
                    "type": "string",
                    "description": "UUID of the sink (destination) organization. Must be a valid UUID.\n"
                },
                "sinkOrgName": {
                    "type": "string",
                    "description": "Name of the sink (destination) organization.\n"
                },
                "sourceOrgId": {
                    "type": "string",
                    "description": "UUID of the source (current) organization.\n"
                },
                "sourceOrgName": {
                    "type": "string",
                    "description": "Name of the source organization.\n"
                }
            },
            "required": [
                "connectionTypes",
                "createdAt",
                "createdBy",
                "sinkOrgId",
                "sinkOrgName",
                "sourceOrgId",
                "sourceOrgName"
            ],
            "inputProperties": {
                "connectionTypes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Set of connection types to enable for this connection (., metrics, logs).\n"
                },
                "sinkOrgId": {
                    "type": "string",
                    "description": "UUID of the sink (destination) organization. Must be a valid UUID.\n"
                }
            },
            "requiredInputs": [
                "connectionTypes",
                "sinkOrgId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OrgConnection resources.\n",
                "properties": {
                    "connectionTypes": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Set of connection types to enable for this connection (., metrics, logs).\n"
                    },
                    "createdAt": {
                        "type": "string",
                        "description": "Timestamp when the connection was created (RFC 3339).\n"
                    },
                    "createdBy": {
                        "type": "string",
                        "description": "Creator user ID (UUID).\n"
                    },
                    "sinkOrgId": {
                        "type": "string",
                        "description": "UUID of the sink (destination) organization. Must be a valid UUID.\n"
                    },
                    "sinkOrgName": {
                        "type": "string",
                        "description": "Name of the sink (destination) organization.\n"
                    },
                    "sourceOrgId": {
                        "type": "string",
                        "description": "UUID of the source (current) organization.\n"
                    },
                    "sourceOrgName": {
                        "type": "string",
                        "description": "Name of the source organization.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/organizationSettings:OrganizationSettings": {
            "description": "Provides a Datadog Organization resource. This can be used to manage your Datadog organization's settings.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Manage Datadog Organization\nconst organization = new datadog.OrganizationSettings(\"organization\", {name: \"foo-organization\"});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Manage Datadog Organization\norganization = datadog.OrganizationSettings(\"organization\", name=\"foo-organization\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Manage Datadog Organization\n    var organization = new Datadog.OrganizationSettings(\"organization\", new()\n    {\n        Name = \"foo-organization\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Manage Datadog Organization\n\t\t_, err := datadog.NewOrganizationSettings(ctx, \"organization\", \u0026datadog.OrganizationSettingsArgs{\n\t\t\tName: pulumi.String(\"foo-organization\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.OrganizationSettings;\nimport com.pulumi.datadog.OrganizationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Manage Datadog Organization\n        var organization = new OrganizationSettings(\"organization\", OrganizationSettingsArgs.builder()\n            .name(\"foo-organization\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Manage Datadog Organization\n  organization:\n    type: datadog:OrganizationSettings\n    properties:\n      name: foo-organization\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/organizationSettings:OrganizationSettings organization 11111111-2222-3333-4444-555555555555\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description of the organization.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name for Organization.\n"
                },
                "publicId": {
                    "type": "string",
                    "description": "The \u003cspan pulumi-lang-nodejs=\"`publicId`\" pulumi-lang-dotnet=\"`PublicId`\" pulumi-lang-go=\"`publicId`\" pulumi-lang-python=\"`public_id`\" pulumi-lang-yaml=\"`publicId`\" pulumi-lang-java=\"`publicId`\"\u003e`publicId`\u003c/span\u003e of the organization you are operating within.\n"
                },
                "securityContacts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of emails used for security event notifications from the organization.\n"
                },
                "settings": {
                    "$ref": "#/types/datadog:index/OrganizationSettingsSettings:OrganizationSettingsSettings",
                    "description": "Organization settings\n"
                }
            },
            "required": [
                "description",
                "publicId",
                "securityContacts",
                "settings"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "Name for Organization.\n"
                },
                "securityContacts": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of emails used for security event notifications from the organization.\n"
                },
                "settings": {
                    "$ref": "#/types/datadog:index/OrganizationSettingsSettings:OrganizationSettingsSettings",
                    "description": "Organization settings\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering OrganizationSettings resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "Description of the organization.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name for Organization.\n"
                    },
                    "publicId": {
                        "type": "string",
                        "description": "The \u003cspan pulumi-lang-nodejs=\"`publicId`\" pulumi-lang-dotnet=\"`PublicId`\" pulumi-lang-go=\"`publicId`\" pulumi-lang-python=\"`public_id`\" pulumi-lang-yaml=\"`publicId`\" pulumi-lang-java=\"`publicId`\"\u003e`publicId`\u003c/span\u003e of the organization you are operating within.\n"
                    },
                    "securityContacts": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of emails used for security event notifications from the organization.\n"
                    },
                    "settings": {
                        "$ref": "#/types/datadog:index/OrganizationSettingsSettings:OrganizationSettingsSettings",
                        "description": "Organization settings\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/powerpack:Powerpack": {
            "description": "Provides a Datadog powerpack resource. This can be used to create and manage Datadog powerpacks.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Manage Datadog Powerpacks\nconst foo = new datadog.Powerpack(\"foo\", {\n    description: \"Created using the Datadog provider in terraform\",\n    liveSpan: \"4h\",\n    layout: {\n        height: 10,\n        width: 3,\n        x: 1,\n        y: 0,\n    },\n    templateVariables: [{\n        defaults: [\"defaults\"],\n        name: \"datacenter\",\n    }],\n    widgets: [{\n        eventStreamDefinition: {\n            query: \"*\",\n            eventSize: \"l\",\n            title: \"Widget Title\",\n            titleSize: \"16\",\n            titleAlign: \"right\",\n        },\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Manage Datadog Powerpacks\nfoo = datadog.Powerpack(\"foo\",\n    description=\"Created using the Datadog provider in terraform\",\n    live_span=\"4h\",\n    layout={\n        \"height\": 10,\n        \"width\": 3,\n        \"x\": 1,\n        \"y\": 0,\n    },\n    template_variables=[{\n        \"defaults\": [\"defaults\"],\n        \"name\": \"datacenter\",\n    }],\n    widgets=[{\n        \"event_stream_definition\": {\n            \"query\": \"*\",\n            \"event_size\": \"l\",\n            \"title\": \"Widget Title\",\n            \"title_size\": \"16\",\n            \"title_align\": \"right\",\n        },\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Manage Datadog Powerpacks\n    var foo = new Datadog.Powerpack(\"foo\", new()\n    {\n        Description = \"Created using the Datadog provider in terraform\",\n        LiveSpan = \"4h\",\n        Layout = new Datadog.Inputs.PowerpackLayoutArgs\n        {\n            Height = 10,\n            Width = 3,\n            X = 1,\n            Y = 0,\n        },\n        TemplateVariables = new[]\n        {\n            new Datadog.Inputs.PowerpackTemplateVariableArgs\n            {\n                Defaults = new[]\n                {\n                    \"defaults\",\n                },\n                Name = \"datacenter\",\n            },\n        },\n        Widgets = new[]\n        {\n            new Datadog.Inputs.PowerpackWidgetArgs\n            {\n                EventStreamDefinition = new Datadog.Inputs.PowerpackWidgetEventStreamDefinitionArgs\n                {\n                    Query = \"*\",\n                    EventSize = \"l\",\n                    Title = \"Widget Title\",\n                    TitleSize = \"16\",\n                    TitleAlign = \"right\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Manage Datadog Powerpacks\n\t\t_, err := datadog.NewPowerpack(ctx, \"foo\", \u0026datadog.PowerpackArgs{\n\t\t\tDescription: pulumi.String(\"Created using the Datadog provider in terraform\"),\n\t\t\tLiveSpan:    pulumi.String(\"4h\"),\n\t\t\tLayout: \u0026datadog.PowerpackLayoutArgs{\n\t\t\t\tHeight: pulumi.Int(10),\n\t\t\t\tWidth:  pulumi.Int(3),\n\t\t\t\tX:      pulumi.Int(1),\n\t\t\t\tY:      pulumi.Int(0),\n\t\t\t},\n\t\t\tTemplateVariables: datadog.PowerpackTemplateVariableArray{\n\t\t\t\t\u0026datadog.PowerpackTemplateVariableArgs{\n\t\t\t\t\tDefaults: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"defaults\"),\n\t\t\t\t\t},\n\t\t\t\t\tName: pulumi.String(\"datacenter\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tWidgets: datadog.PowerpackWidgetArray{\n\t\t\t\t\u0026datadog.PowerpackWidgetArgs{\n\t\t\t\t\tEventStreamDefinition: \u0026datadog.PowerpackWidgetEventStreamDefinitionArgs{\n\t\t\t\t\t\tQuery:      pulumi.String(\"*\"),\n\t\t\t\t\t\tEventSize:  pulumi.String(\"l\"),\n\t\t\t\t\t\tTitle:      pulumi.String(\"Widget Title\"),\n\t\t\t\t\t\tTitleSize:  pulumi.String(\"16\"),\n\t\t\t\t\t\tTitleAlign: pulumi.String(\"right\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.Powerpack;\nimport com.pulumi.datadog.PowerpackArgs;\nimport com.pulumi.datadog.inputs.PowerpackLayoutArgs;\nimport com.pulumi.datadog.inputs.PowerpackTemplateVariableArgs;\nimport com.pulumi.datadog.inputs.PowerpackWidgetArgs;\nimport com.pulumi.datadog.inputs.PowerpackWidgetEventStreamDefinitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Manage Datadog Powerpacks\n        var foo = new Powerpack(\"foo\", PowerpackArgs.builder()\n            .description(\"Created using the Datadog provider in terraform\")\n            .liveSpan(\"4h\")\n            .layout(PowerpackLayoutArgs.builder()\n                .height(10)\n                .width(3)\n                .x(1)\n                .y(0)\n                .build())\n            .templateVariables(PowerpackTemplateVariableArgs.builder()\n                .defaults(\"defaults\")\n                .name(\"datacenter\")\n                .build())\n            .widgets(PowerpackWidgetArgs.builder()\n                .eventStreamDefinition(PowerpackWidgetEventStreamDefinitionArgs.builder()\n                    .query(\"*\")\n                    .eventSize(\"l\")\n                    .title(\"Widget Title\")\n                    .titleSize(\"16\")\n                    .titleAlign(\"right\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Manage Datadog Powerpacks\n  foo:\n    type: datadog:Powerpack\n    properties:\n      description: Created using the Datadog provider in terraform\n      liveSpan: 4h\n      layout:\n        height: 10\n        width: 3\n        x: 1\n        y: 0\n      templateVariables:\n        - defaults:\n            - defaults\n          name: datacenter\n      widgets:\n        - eventStreamDefinition:\n            query: '*'\n            eventSize: l\n            title: Widget Title\n            titleSize: 16\n            titleAlign: right\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/powerpack:Powerpack foo 11111111-2222-3333-4444-555555555555\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "The description of the powerpack.\n"
                },
                "layout": {
                    "$ref": "#/types/datadog:index/PowerpackLayout:PowerpackLayout",
                    "description": "The layout of the powerpack on a free-form dashboard.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the powerpack. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name for the powerpack.\n"
                },
                "showTitle": {
                    "type": "boolean",
                    "description": "Whether or not title should be displayed in the powerpack.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tags to identify this powerpack.\n"
                },
                "templateVariables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackTemplateVariable:PowerpackTemplateVariable"
                    },
                    "description": "The list of template variables for this powerpack.\n"
                },
                "widgets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidget:PowerpackWidget"
                    },
                    "description": "The list of widgets to display in the powerpack.\n"
                }
            },
            "required": [
                "layout"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "The description of the powerpack.\n"
                },
                "layout": {
                    "$ref": "#/types/datadog:index/PowerpackLayout:PowerpackLayout",
                    "description": "The layout of the powerpack on a free-form dashboard.\n"
                },
                "liveSpan": {
                    "type": "string",
                    "description": "The timeframe to use when displaying the powerpack. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name for the powerpack.\n"
                },
                "showTitle": {
                    "type": "boolean",
                    "description": "Whether or not title should be displayed in the powerpack.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tags to identify this powerpack.\n"
                },
                "templateVariables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackTemplateVariable:PowerpackTemplateVariable"
                    },
                    "description": "The list of template variables for this powerpack.\n"
                },
                "widgets": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/PowerpackWidget:PowerpackWidget"
                    },
                    "description": "The list of widgets to display in the powerpack.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Powerpack resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "The description of the powerpack.\n"
                    },
                    "layout": {
                        "$ref": "#/types/datadog:index/PowerpackLayout:PowerpackLayout",
                        "description": "The layout of the powerpack on a free-form dashboard.\n"
                    },
                    "liveSpan": {
                        "type": "string",
                        "description": "The timeframe to use when displaying the powerpack. Valid values are \u003cspan pulumi-lang-nodejs=\"`1m`\" pulumi-lang-dotnet=\"`1m`\" pulumi-lang-go=\"`1m`\" pulumi-lang-python=\"`1m`\" pulumi-lang-yaml=\"`1m`\" pulumi-lang-java=\"`1m`\"\u003e`1m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`5m`\" pulumi-lang-dotnet=\"`5m`\" pulumi-lang-go=\"`5m`\" pulumi-lang-python=\"`5m`\" pulumi-lang-yaml=\"`5m`\" pulumi-lang-java=\"`5m`\"\u003e`5m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`10m`\" pulumi-lang-dotnet=\"`10m`\" pulumi-lang-go=\"`10m`\" pulumi-lang-python=\"`10m`\" pulumi-lang-yaml=\"`10m`\" pulumi-lang-java=\"`10m`\"\u003e`10m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`15m`\" pulumi-lang-dotnet=\"`15m`\" pulumi-lang-go=\"`15m`\" pulumi-lang-python=\"`15m`\" pulumi-lang-yaml=\"`15m`\" pulumi-lang-java=\"`15m`\"\u003e`15m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`30m`\" pulumi-lang-dotnet=\"`30m`\" pulumi-lang-go=\"`30m`\" pulumi-lang-python=\"`30m`\" pulumi-lang-yaml=\"`30m`\" pulumi-lang-java=\"`30m`\"\u003e`30m`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1mo`\" pulumi-lang-dotnet=\"`1mo`\" pulumi-lang-go=\"`1mo`\" pulumi-lang-python=\"`1mo`\" pulumi-lang-yaml=\"`1mo`\" pulumi-lang-java=\"`1mo`\"\u003e`1mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`3mo`\" pulumi-lang-dotnet=\"`3mo`\" pulumi-lang-go=\"`3mo`\" pulumi-lang-python=\"`3mo`\" pulumi-lang-yaml=\"`3mo`\" pulumi-lang-java=\"`3mo`\"\u003e`3mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`6mo`\" pulumi-lang-dotnet=\"`6mo`\" pulumi-lang-go=\"`6mo`\" pulumi-lang-python=\"`6mo`\" pulumi-lang-yaml=\"`6mo`\" pulumi-lang-java=\"`6mo`\"\u003e`6mo`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`weekToDate`\" pulumi-lang-dotnet=\"`WeekToDate`\" pulumi-lang-go=\"`weekToDate`\" pulumi-lang-python=\"`week_to_date`\" pulumi-lang-yaml=\"`weekToDate`\" pulumi-lang-java=\"`weekToDate`\"\u003e`weekToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`monthToDate`\" pulumi-lang-dotnet=\"`MonthToDate`\" pulumi-lang-go=\"`monthToDate`\" pulumi-lang-python=\"`month_to_date`\" pulumi-lang-yaml=\"`monthToDate`\" pulumi-lang-java=\"`monthToDate`\"\u003e`monthToDate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1y`\" pulumi-lang-dotnet=\"`1y`\" pulumi-lang-go=\"`1y`\" pulumi-lang-python=\"`1y`\" pulumi-lang-yaml=\"`1y`\" pulumi-lang-java=\"`1y`\"\u003e`1y`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`alert`\" pulumi-lang-dotnet=\"`Alert`\" pulumi-lang-go=\"`alert`\" pulumi-lang-python=\"`alert`\" pulumi-lang-yaml=\"`alert`\" pulumi-lang-java=\"`alert`\"\u003e`alert`\u003c/span\u003e.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name for the powerpack.\n"
                    },
                    "showTitle": {
                        "type": "boolean",
                        "description": "Whether or not title should be displayed in the powerpack.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of tags to identify this powerpack.\n"
                    },
                    "templateVariables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/PowerpackTemplateVariable:PowerpackTemplateVariable"
                        },
                        "description": "The list of template variables for this powerpack.\n"
                    },
                    "widgets": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/PowerpackWidget:PowerpackWidget"
                        },
                        "description": "The list of widgets to display in the powerpack.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/referenceTable:ReferenceTable": {
            "description": "Provides a Datadog Reference Table resource for cloud storage sources (S3, GCS, Azure). This can be used to create and manage Datadog reference tables that sync data from cloud storage. For setup instructions including granting Datadog read access to your cloud storage bucket, see the [Reference Tables documentation](https://docs.datadoghq.com/reference_tables/?tab=cloudstorage#create-a-reference-table).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create a reference table from an S3 bucket\nconst s3Table = new datadog.ReferenceTable(\"s3_table\", {\n    tableName: \"products_catalog\",\n    description: \"Product catalog synced from S3\",\n    source: \"S3\",\n    fileMetadata: [{\n        syncEnabled: true,\n        accessDetails: [{\n            awsDetail: [{\n                awsAccountId: \"123456789000\",\n                awsBucketName: \"my-data-bucket\",\n                filePath: \"reference-tables/products.csv\",\n            }],\n        }],\n    }],\n    schema: [{\n        primaryKeys: [\"product_id\"],\n        fields: [\n            {\n                name: \"product_id\",\n                type: \"STRING\",\n            },\n            {\n                name: \"product_name\",\n                type: \"STRING\",\n            },\n            {\n                name: \"category\",\n                type: \"STRING\",\n            },\n            {\n                name: \"price_cents\",\n                type: \"INT32\",\n            },\n        ],\n    }],\n    tags: [\n        \"source:s3\",\n        \"team:catalog\",\n        \"env:production\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create a reference table from an S3 bucket\ns3_table = datadog.ReferenceTable(\"s3_table\",\n    table_name=\"products_catalog\",\n    description=\"Product catalog synced from S3\",\n    source=\"S3\",\n    file_metadata=[{\n        \"syncEnabled\": True,\n        \"accessDetails\": [{\n            \"awsDetail\": [{\n                \"awsAccountId\": \"123456789000\",\n                \"awsBucketName\": \"my-data-bucket\",\n                \"filePath\": \"reference-tables/products.csv\",\n            }],\n        }],\n    }],\n    schema=[{\n        \"primaryKeys\": [\"product_id\"],\n        \"fields\": [\n            {\n                \"name\": \"product_id\",\n                \"type\": \"STRING\",\n            },\n            {\n                \"name\": \"product_name\",\n                \"type\": \"STRING\",\n            },\n            {\n                \"name\": \"category\",\n                \"type\": \"STRING\",\n            },\n            {\n                \"name\": \"price_cents\",\n                \"type\": \"INT32\",\n            },\n        ],\n    }],\n    tags=[\n        \"source:s3\",\n        \"team:catalog\",\n        \"env:production\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a reference table from an S3 bucket\n    var s3Table = new Datadog.ReferenceTable(\"s3_table\", new()\n    {\n        TableName = \"products_catalog\",\n        Description = \"Product catalog synced from S3\",\n        Source = \"S3\",\n        FileMetadata = new[]\n        {\n            \n            {\n                { \"syncEnabled\", true },\n                { \"accessDetails\", new[]\n                {\n                    \n                    {\n                        { \"awsDetail\", new[]\n                        {\n                            \n                            {\n                                { \"awsAccountId\", \"123456789000\" },\n                                { \"awsBucketName\", \"my-data-bucket\" },\n                                { \"filePath\", \"reference-tables/products.csv\" },\n                            },\n                        } },\n                    },\n                } },\n            },\n        },\n        Schema = new[]\n        {\n            \n            {\n                { \"primaryKeys\", new[]\n                {\n                    \"product_id\",\n                } },\n                { \"fields\", new[]\n                {\n                    \n                    {\n                        { \"name\", \"product_id\" },\n                        { \"type\", \"STRING\" },\n                    },\n                    \n                    {\n                        { \"name\", \"product_name\" },\n                        { \"type\", \"STRING\" },\n                    },\n                    \n                    {\n                        { \"name\", \"category\" },\n                        { \"type\", \"STRING\" },\n                    },\n                    \n                    {\n                        { \"name\", \"price_cents\" },\n                        { \"type\", \"INT32\" },\n                    },\n                } },\n            },\n        },\n        Tags = new[]\n        {\n            \"source:s3\",\n            \"team:catalog\",\n            \"env:production\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create a reference table from an S3 bucket\n\t\t_, err := datadog.NewReferenceTable(ctx, \"s3_table\", \u0026datadog.ReferenceTableArgs{\n\t\t\tTableName:   pulumi.String(\"products_catalog\"),\n\t\t\tDescription: pulumi.String(\"Product catalog synced from S3\"),\n\t\t\tSource:      pulumi.String(\"S3\"),\n\t\t\tFileMetadata: datadog.ReferenceTableFileMetadataArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"syncEnabled\": true,\n\t\t\t\t\t\"accessDetails\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"awsDetail\": []map[string]interface{}{\n\t\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"awsAccountId\":  \"123456789000\",\n\t\t\t\t\t\t\t\t\t\"awsBucketName\": \"my-data-bucket\",\n\t\t\t\t\t\t\t\t\t\"filePath\":      \"reference-tables/products.csv\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSchema: datadog.ReferenceTableSchemaArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"primaryKeys\": []string{\n\t\t\t\t\t\t\"product_id\",\n\t\t\t\t\t},\n\t\t\t\t\t\"fields\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"name\": \"product_id\",\n\t\t\t\t\t\t\t\"type\": \"STRING\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"name\": \"product_name\",\n\t\t\t\t\t\t\t\"type\": \"STRING\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"name\": \"category\",\n\t\t\t\t\t\t\t\"type\": \"STRING\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"name\": \"price_cents\",\n\t\t\t\t\t\t\t\"type\": \"INT32\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"source:s3\"),\n\t\t\t\tpulumi.String(\"team:catalog\"),\n\t\t\t\tpulumi.String(\"env:production\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.ReferenceTable;\nimport com.pulumi.datadog.ReferenceTableArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create a reference table from an S3 bucket\n        var s3Table = new ReferenceTable(\"s3Table\", ReferenceTableArgs.builder()\n            .tableName(\"products_catalog\")\n            .description(\"Product catalog synced from S3\")\n            .source(\"S3\")\n            .fileMetadata(ReferenceTableFileMetadataArgs.builder()\n                .syncEnabled(true)\n                .accessDetails(ReferenceTableFileMetadataAccessDetailsArgs.builder()\n                    .awsDetail(ReferenceTableFileMetadataAccessDetailsAwsDetailArgs.builder()\n                        .awsAccountId(\"123456789000\")\n                        .awsBucketName(\"my-data-bucket\")\n                        .filePath(\"reference-tables/products.csv\")\n                        .build())\n                    .build())\n                .build())\n            .schema(ReferenceTableSchemaArgs.builder()\n                .primaryKeys(\"product_id\")\n                .fields(                \n                    ReferenceTableSchemaFieldArgs.builder()\n                        .name(\"product_id\")\n                        .type(\"STRING\")\n                        .build(),\n                    ReferenceTableSchemaFieldArgs.builder()\n                        .name(\"product_name\")\n                        .type(\"STRING\")\n                        .build(),\n                    ReferenceTableSchemaFieldArgs.builder()\n                        .name(\"category\")\n                        .type(\"STRING\")\n                        .build(),\n                    ReferenceTableSchemaFieldArgs.builder()\n                        .name(\"price_cents\")\n                        .type(\"INT32\")\n                        .build())\n                .build())\n            .tags(            \n                \"source:s3\",\n                \"team:catalog\",\n                \"env:production\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a reference table from an S3 bucket\n  s3Table:\n    type: datadog:ReferenceTable\n    name: s3_table\n    properties:\n      tableName: products_catalog\n      description: Product catalog synced from S3\n      source: S3\n      fileMetadata:\n        - syncEnabled: true\n          accessDetails:\n            - awsDetail:\n                - awsAccountId: '123456789000'\n                  awsBucketName: my-data-bucket\n                  filePath: reference-tables/products.csv\n      schema:\n        - primaryKeys:\n            - product_id\n          fields:\n            - name: product_id\n              type: STRING\n            - name: product_name\n              type: STRING\n            - name: category\n              type: STRING\n            - name: price_cents\n              type: INT32\n      tags:\n        - source:s3\n        - team:catalog\n        - env:production\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n!/bin/bash\nImport an existing reference table by its UUID\n\n```sh\n$ pulumi import datadog:index/referenceTable:ReferenceTable imported_table \"00000000-0000-0000-0000-000000000000\"\n```\n\nAfter importing, you must add the full resource configuration to your .tf file.\nUse `terraform state show datadog_reference_table.imported_table` to view the imported schema\nand other attributes, then add the matching configuration:\n\nresource \u003cspan pulumi-lang-nodejs=\"\"datadog.ReferenceTable\"\" pulumi-lang-dotnet=\"\"datadog.ReferenceTable\"\" pulumi-lang-go=\"\"ReferenceTable\"\" pulumi-lang-python=\"\"ReferenceTable\"\" pulumi-lang-yaml=\"\"datadog.ReferenceTable\"\" pulumi-lang-java=\"\"datadog.ReferenceTable\"\"\u003e\"datadog.ReferenceTable\"\u003c/span\u003e \u003cspan pulumi-lang-nodejs=\"\"importedTable\"\" pulumi-lang-dotnet=\"\"ImportedTable\"\" pulumi-lang-go=\"\"importedTable\"\" pulumi-lang-python=\"\"imported_table\"\" pulumi-lang-yaml=\"\"importedTable\"\" pulumi-lang-java=\"\"importedTable\"\"\u003e\"importedTable\"\u003c/span\u003e {\u003cspan pulumi-lang-nodejs=\"\ntableName \" pulumi-lang-dotnet=\"\nTableName \" pulumi-lang-go=\"\ntableName \" pulumi-lang-python=\"\ntable_name \" pulumi-lang-yaml=\"\ntableName \" pulumi-lang-java=\"\ntableName \"\u003e\ntableName \u003c/span\u003e = \u003cspan pulumi-lang-nodejs=\"\"existingTable\"\" pulumi-lang-dotnet=\"\"ExistingTable\"\" pulumi-lang-go=\"\"existingTable\"\" pulumi-lang-python=\"\"existing_table\"\" pulumi-lang-yaml=\"\"existingTable\"\" pulumi-lang-java=\"\"existingTable\"\"\u003e\"existingTable\"\u003c/span\u003e\ndescription = \"Previously created table\"\nsource      = \"S3\"  # or \"GCS\" or \"AZURE\"\n\u003cspan pulumi-lang-nodejs=\"\nfileMetadata \" pulumi-lang-dotnet=\"\nFileMetadata \" pulumi-lang-go=\"\nfileMetadata \" pulumi-lang-python=\"\nfile_metadata \" pulumi-lang-yaml=\"\nfileMetadata \" pulumi-lang-java=\"\nfileMetadata \"\u003e\nfileMetadata \u003c/span\u003e{\u003cspan pulumi-lang-nodejs=\"\nsyncEnabled \" pulumi-lang-dotnet=\"\nSyncEnabled \" pulumi-lang-go=\"\nsyncEnabled \" pulumi-lang-python=\"\nsync_enabled \" pulumi-lang-yaml=\"\nsyncEnabled \" pulumi-lang-java=\"\nsyncEnabled \"\u003e\nsyncEnabled \u003c/span\u003e= true\n\u003cspan pulumi-lang-nodejs=\"\naccessDetails \" pulumi-lang-dotnet=\"\nAccessDetails \" pulumi-lang-go=\"\naccessDetails \" pulumi-lang-python=\"\naccess_details \" pulumi-lang-yaml=\"\naccessDetails \" pulumi-lang-java=\"\naccessDetails \"\u003e\naccessDetails \u003c/span\u003e{\u003cspan pulumi-lang-nodejs=\"\nawsDetail \" pulumi-lang-dotnet=\"\nAwsDetail \" pulumi-lang-go=\"\nawsDetail \" pulumi-lang-python=\"\naws_detail \" pulumi-lang-yaml=\"\nawsDetail \" pulumi-lang-java=\"\nawsDetail \"\u003e\nawsDetail \u003c/span\u003e{\u003cspan pulumi-lang-nodejs=\"\nawsAccountId \" pulumi-lang-dotnet=\"\nAwsAccountId \" pulumi-lang-go=\"\nawsAccountId \" pulumi-lang-python=\"\naws_account_id \" pulumi-lang-yaml=\"\nawsAccountId \" pulumi-lang-java=\"\nawsAccountId \"\u003e\nawsAccountId \u003c/span\u003e = \"123456789000\"\u003cspan pulumi-lang-nodejs=\"\nawsBucketName \" pulumi-lang-dotnet=\"\nAwsBucketName \" pulumi-lang-go=\"\nawsBucketName \" pulumi-lang-python=\"\naws_bucket_name \" pulumi-lang-yaml=\"\nawsBucketName \" pulumi-lang-java=\"\nawsBucketName \"\u003e\nawsBucketName \u003c/span\u003e= \"existing-bucket\"\u003cspan pulumi-lang-nodejs=\"\nfilePath \" pulumi-lang-dotnet=\"\nFilePath \" pulumi-lang-go=\"\nfilePath \" pulumi-lang-python=\"\nfile_path \" pulumi-lang-yaml=\"\nfilePath \" pulumi-lang-java=\"\nfilePath \"\u003e\nfilePath \u003c/span\u003e      = \"data/existing.csv\"\n}\n}\n}\n\nschema {\u003cspan pulumi-lang-nodejs=\"\nprimaryKeys \" pulumi-lang-dotnet=\"\nPrimaryKeys \" pulumi-lang-go=\"\nprimaryKeys \" pulumi-lang-python=\"\nprimary_keys \" pulumi-lang-yaml=\"\nprimaryKeys \" pulumi-lang-java=\"\nprimaryKeys \"\u003e\nprimaryKeys \u003c/span\u003e= [\"id\"]\n\nfields {\nname = \"id\"\ntype = \"STRING\"\n}\n\nfields {\nname = \"value\"\ntype = \"STRING\"\n}\n}\n\ntags = [\"imported:true\"]\n}\n\n",
            "properties": {
                "createdBy": {
                    "type": "string",
                    "description": "UUID of the user who created the reference table.\n"
                },
                "description": {
                    "type": "string",
                    "description": "The description of the reference table.\n"
                },
                "fileMetadata": {
                    "$ref": "#/types/datadog:index/ReferenceTableFileMetadata:ReferenceTableFileMetadata",
                    "description": "Configuration for cloud storage file access and sync settings.\n"
                },
                "lastUpdatedBy": {
                    "type": "string",
                    "description": "UUID of the user who last updated the reference table.\n"
                },
                "rowCount": {
                    "type": "integer",
                    "description": "The number of successfully processed rows in the reference table.\n"
                },
                "schema": {
                    "$ref": "#/types/datadog:index/ReferenceTableSchema:ReferenceTableSchema",
                    "description": "The schema definition for the reference table, including field definitions and primary keys. This block is required. Schema is only set on create; updates are derived from the file asynchronously.\n"
                },
                "source": {
                    "type": "string",
                    "description": "The source type for the reference table. Valid values are `S3`, `GCS`, `AZURE`.\n"
                },
                "status": {
                    "type": "string",
                    "description": "The status of the reference table (e.g., DONE, PROCESSING, ERROR).\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "The name of the reference table. This must be unique within your organization.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags to associate with the reference table.\n"
                },
                "updatedAt": {
                    "type": "string",
                    "description": "The timestamp of the last update to the reference table in ISO 8601 format.\n"
                }
            },
            "required": [
                "createdBy",
                "lastUpdatedBy",
                "rowCount",
                "source",
                "status",
                "tableName",
                "updatedAt"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "The description of the reference table.\n"
                },
                "fileMetadata": {
                    "$ref": "#/types/datadog:index/ReferenceTableFileMetadata:ReferenceTableFileMetadata",
                    "description": "Configuration for cloud storage file access and sync settings.\n"
                },
                "schema": {
                    "$ref": "#/types/datadog:index/ReferenceTableSchema:ReferenceTableSchema",
                    "description": "The schema definition for the reference table, including field definitions and primary keys. This block is required. Schema is only set on create; updates are derived from the file asynchronously.\n"
                },
                "source": {
                    "type": "string",
                    "description": "The source type for the reference table. Valid values are `S3`, `GCS`, `AZURE`.\n"
                },
                "tableName": {
                    "type": "string",
                    "description": "The name of the reference table. This must be unique within your organization.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags to associate with the reference table.\n"
                }
            },
            "requiredInputs": [
                "source",
                "tableName"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ReferenceTable resources.\n",
                "properties": {
                    "createdBy": {
                        "type": "string",
                        "description": "UUID of the user who created the reference table.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "The description of the reference table.\n"
                    },
                    "fileMetadata": {
                        "$ref": "#/types/datadog:index/ReferenceTableFileMetadata:ReferenceTableFileMetadata",
                        "description": "Configuration for cloud storage file access and sync settings.\n"
                    },
                    "lastUpdatedBy": {
                        "type": "string",
                        "description": "UUID of the user who last updated the reference table.\n"
                    },
                    "rowCount": {
                        "type": "integer",
                        "description": "The number of successfully processed rows in the reference table.\n"
                    },
                    "schema": {
                        "$ref": "#/types/datadog:index/ReferenceTableSchema:ReferenceTableSchema",
                        "description": "The schema definition for the reference table, including field definitions and primary keys. This block is required. Schema is only set on create; updates are derived from the file asynchronously.\n"
                    },
                    "source": {
                        "type": "string",
                        "description": "The source type for the reference table. Valid values are `S3`, `GCS`, `AZURE`.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "The status of the reference table (e.g., DONE, PROCESSING, ERROR).\n"
                    },
                    "tableName": {
                        "type": "string",
                        "description": "The name of the reference table. This must be unique within your organization.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of tags to associate with the reference table.\n"
                    },
                    "updatedAt": {
                        "type": "string",
                        "description": "The timestamp of the last update to the reference table in ISO 8601 format.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/restrictionPolicy:RestrictionPolicy": {
            "description": "Provides a Datadog RestrictionPolicy resource. This can be used to create and manage Datadog restriction policies.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new restriction_policy resource\nconst foo = new datadog.RestrictionPolicy(\"foo\", {\n    resourceId: \"security-rule:abc-def-ghi\",\n    bindings: [\n        {\n            principals: [\"role:00000000-0000-1111-0000-000000000000\"],\n            relation: \"editor\",\n        },\n        {\n            principals: [\"org:10000000-0000-1111-0000-000000000000\"],\n            relation: \"viewer\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new restriction_policy resource\nfoo = datadog.RestrictionPolicy(\"foo\",\n    resource_id=\"security-rule:abc-def-ghi\",\n    bindings=[\n        {\n            \"principals\": [\"role:00000000-0000-1111-0000-000000000000\"],\n            \"relation\": \"editor\",\n        },\n        {\n            \"principals\": [\"org:10000000-0000-1111-0000-000000000000\"],\n            \"relation\": \"viewer\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new restriction_policy resource\n    var foo = new Datadog.RestrictionPolicy(\"foo\", new()\n    {\n        ResourceId = \"security-rule:abc-def-ghi\",\n        Bindings = new[]\n        {\n            new Datadog.Inputs.RestrictionPolicyBindingArgs\n            {\n                Principals = new[]\n                {\n                    \"role:00000000-0000-1111-0000-000000000000\",\n                },\n                Relation = \"editor\",\n            },\n            new Datadog.Inputs.RestrictionPolicyBindingArgs\n            {\n                Principals = new[]\n                {\n                    \"org:10000000-0000-1111-0000-000000000000\",\n                },\n                Relation = \"viewer\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new restriction_policy resource\n\t\t_, err := datadog.NewRestrictionPolicy(ctx, \"foo\", \u0026datadog.RestrictionPolicyArgs{\n\t\t\tResourceId: pulumi.String(\"security-rule:abc-def-ghi\"),\n\t\t\tBindings: datadog.RestrictionPolicyBindingArray{\n\t\t\t\t\u0026datadog.RestrictionPolicyBindingArgs{\n\t\t\t\t\tPrincipals: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"role:00000000-0000-1111-0000-000000000000\"),\n\t\t\t\t\t},\n\t\t\t\t\tRelation: pulumi.String(\"editor\"),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.RestrictionPolicyBindingArgs{\n\t\t\t\t\tPrincipals: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"org:10000000-0000-1111-0000-000000000000\"),\n\t\t\t\t\t},\n\t\t\t\t\tRelation: pulumi.String(\"viewer\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.RestrictionPolicy;\nimport com.pulumi.datadog.RestrictionPolicyArgs;\nimport com.pulumi.datadog.inputs.RestrictionPolicyBindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new restriction_policy resource\n        var foo = new RestrictionPolicy(\"foo\", RestrictionPolicyArgs.builder()\n            .resourceId(\"security-rule:abc-def-ghi\")\n            .bindings(            \n                RestrictionPolicyBindingArgs.builder()\n                    .principals(\"role:00000000-0000-1111-0000-000000000000\")\n                    .relation(\"editor\")\n                    .build(),\n                RestrictionPolicyBindingArgs.builder()\n                    .principals(\"org:10000000-0000-1111-0000-000000000000\")\n                    .relation(\"viewer\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new restriction_policy resource\n  foo:\n    type: datadog:RestrictionPolicy\n    properties:\n      resourceId: security-rule:abc-def-ghi\n      bindings:\n        - principals:\n            - role:00000000-0000-1111-0000-000000000000\n          relation: editor\n        - principals:\n            - org:10000000-0000-1111-0000-000000000000\n          relation: viewer\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/restrictionPolicy:RestrictionPolicy new_list \"\u003cpolicy_id\u003e\"\n```\n\n",
            "properties": {
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/RestrictionPolicyBinding:RestrictionPolicyBinding"
                    }
                },
                "resourceId": {
                    "type": "string",
                    "description": "Identifier for the resource, formatted as resource*type:resource*id.\n"
                }
            },
            "required": [
                "resourceId"
            ],
            "inputProperties": {
                "bindings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/RestrictionPolicyBinding:RestrictionPolicyBinding"
                    }
                },
                "resourceId": {
                    "type": "string",
                    "description": "Identifier for the resource, formatted as resource*type:resource*id.\n"
                }
            },
            "requiredInputs": [
                "resourceId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RestrictionPolicy resources.\n",
                "properties": {
                    "bindings": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/RestrictionPolicyBinding:RestrictionPolicyBinding"
                        }
                    },
                    "resourceId": {
                        "type": "string",
                        "description": "Identifier for the resource, formatted as resource*type:resource*id.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/role:Role": {
            "description": "Provides a Datadog role resource. This can be used to create and manage Datadog roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Source the permissions\nconst ddPerms = datadog.getPermissions({});\n// Create an API Key Manager role\nconst apiKeyManager = new datadog.Role(\"api_key_manager\", {\n    name: \"API Key Manager\",\n    permissions: [\n        {\n            id: ddPerms.then(ddPerms =\u003e ddPerms.permissions?.apiKeysRead),\n        },\n        {\n            id: ddPerms.then(ddPerms =\u003e ddPerms.permissions?.apiKeysWrite),\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Source the permissions\ndd_perms = datadog.get_permissions()\n# Create an API Key Manager role\napi_key_manager = datadog.Role(\"api_key_manager\",\n    name=\"API Key Manager\",\n    permissions=[\n        {\n            \"id\": dd_perms.permissions[\"apiKeysRead\"],\n        },\n        {\n            \"id\": dd_perms.permissions[\"apiKeysWrite\"],\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Source the permissions\n    var ddPerms = Datadog.GetPermissions.Invoke();\n\n    // Create an API Key Manager role\n    var apiKeyManager = new Datadog.Role(\"api_key_manager\", new()\n    {\n        Name = \"API Key Manager\",\n        Permissions = new[]\n        {\n            new Datadog.Inputs.RolePermissionArgs\n            {\n                Id = ddPerms.Apply(getPermissionsResult =\u003e getPermissionsResult.Permissions?.ApiKeysRead),\n            },\n            new Datadog.Inputs.RolePermissionArgs\n            {\n                Id = ddPerms.Apply(getPermissionsResult =\u003e getPermissionsResult.Permissions?.ApiKeysWrite),\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Source the permissions\n\t\tddPerms, err := datadog.GetPermissions(ctx, \u0026datadog.GetPermissionsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create an API Key Manager role\n\t\t_, err = datadog.NewRole(ctx, \"api_key_manager\", \u0026datadog.RoleArgs{\n\t\t\tName: pulumi.String(\"API Key Manager\"),\n\t\t\tPermissions: datadog.RolePermissionArray{\n\t\t\t\t\u0026datadog.RolePermissionArgs{\n\t\t\t\t\tId: pulumi.String(ddPerms.Permissions.ApiKeysRead),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.RolePermissionArgs{\n\t\t\t\t\tId: pulumi.String(ddPerms.Permissions.ApiKeysWrite),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DatadogFunctions;\nimport com.pulumi.datadog.inputs.GetPermissionsArgs;\nimport com.pulumi.datadog.Role;\nimport com.pulumi.datadog.RoleArgs;\nimport com.pulumi.datadog.inputs.RolePermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Source the permissions\n        final var ddPerms = DatadogFunctions.getPermissions(GetPermissionsArgs.builder()\n            .build());\n\n        // Create an API Key Manager role\n        var apiKeyManager = new Role(\"apiKeyManager\", RoleArgs.builder()\n            .name(\"API Key Manager\")\n            .permissions(            \n                RolePermissionArgs.builder()\n                    .id(ddPerms.permissions().apiKeysRead())\n                    .build(),\n                RolePermissionArgs.builder()\n                    .id(ddPerms.permissions().apiKeysWrite())\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create an API Key Manager role\n  apiKeyManager:\n    type: datadog:Role\n    name: api_key_manager\n    properties:\n      name: API Key Manager\n      permissions:\n        - id: ${ddPerms.permissions.apiKeysRead}\n        - id: ${ddPerms.permissions.apiKeysWrite}\nvariables:\n  # Source the permissions\n  ddPerms:\n    fn::invoke:\n      function: datadog:getPermissions\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nRoles can be imported using their ID, e.g.\n\n```sh\n$ pulumi import datadog:index/role:Role example_role 000000-0000-0000-0000-000000000000\n```\n\n",
            "properties": {
                "defaultPermissionsOptOut": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the role does not have default (restricted) permissions unless they are explicitly set. The \u003cspan pulumi-lang-nodejs=\"`includeRestricted`\" pulumi-lang-dotnet=\"`IncludeRestricted`\" pulumi-lang-go=\"`includeRestricted`\" pulumi-lang-python=\"`include_restricted`\" pulumi-lang-yaml=\"`includeRestricted`\" pulumi-lang-java=\"`includeRestricted`\"\u003e`includeRestricted`\u003c/span\u003e attribute for the \u003cspan pulumi-lang-nodejs=\"`datadog.getPermissions`\" pulumi-lang-dotnet=\"`datadog.getPermissions`\" pulumi-lang-go=\"`getPermissions`\" pulumi-lang-python=\"`get_permissions`\" pulumi-lang-yaml=\"`datadog.getPermissions`\" pulumi-lang-java=\"`datadog.getPermissions`\"\u003e`datadog.getPermissions`\u003c/span\u003e data source must be set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to manage default permissions in Terraform.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the role.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/RolePermission:RolePermission"
                    },
                    "description": "Set of objects containing the permission ID and the name of the permissions granted to this role.\n"
                },
                "userCount": {
                    "type": "integer",
                    "description": "Number of users that have this role.\n"
                },
                "validate": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skip the validation call done during plan.\n"
                }
            },
            "required": [
                "name",
                "userCount"
            ],
            "inputProperties": {
                "defaultPermissionsOptOut": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the role does not have default (restricted) permissions unless they are explicitly set. The \u003cspan pulumi-lang-nodejs=\"`includeRestricted`\" pulumi-lang-dotnet=\"`IncludeRestricted`\" pulumi-lang-go=\"`includeRestricted`\" pulumi-lang-python=\"`include_restricted`\" pulumi-lang-yaml=\"`includeRestricted`\" pulumi-lang-java=\"`includeRestricted`\"\u003e`includeRestricted`\u003c/span\u003e attribute for the \u003cspan pulumi-lang-nodejs=\"`datadog.getPermissions`\" pulumi-lang-dotnet=\"`datadog.getPermissions`\" pulumi-lang-go=\"`getPermissions`\" pulumi-lang-python=\"`get_permissions`\" pulumi-lang-yaml=\"`datadog.getPermissions`\" pulumi-lang-java=\"`datadog.getPermissions`\"\u003e`datadog.getPermissions`\u003c/span\u003e data source must be set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to manage default permissions in Terraform.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the role.\n"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/RolePermission:RolePermission"
                    },
                    "description": "Set of objects containing the permission ID and the name of the permissions granted to this role.\n"
                },
                "validate": {
                    "type": "boolean",
                    "description": "If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skip the validation call done during plan.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering Role resources.\n",
                "properties": {
                    "defaultPermissionsOptOut": {
                        "type": "boolean",
                        "description": "If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the role does not have default (restricted) permissions unless they are explicitly set. The \u003cspan pulumi-lang-nodejs=\"`includeRestricted`\" pulumi-lang-dotnet=\"`IncludeRestricted`\" pulumi-lang-go=\"`includeRestricted`\" pulumi-lang-python=\"`include_restricted`\" pulumi-lang-yaml=\"`includeRestricted`\" pulumi-lang-java=\"`includeRestricted`\"\u003e`includeRestricted`\u003c/span\u003e attribute for the \u003cspan pulumi-lang-nodejs=\"`datadog.getPermissions`\" pulumi-lang-dotnet=\"`datadog.getPermissions`\" pulumi-lang-go=\"`getPermissions`\" pulumi-lang-python=\"`get_permissions`\" pulumi-lang-yaml=\"`datadog.getPermissions`\" pulumi-lang-java=\"`datadog.getPermissions`\"\u003e`datadog.getPermissions`\u003c/span\u003e data source must be set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to manage default permissions in Terraform.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the role.\n"
                    },
                    "permissions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/RolePermission:RolePermission"
                        },
                        "description": "Set of objects containing the permission ID and the name of the permissions granted to this role.\n"
                    },
                    "userCount": {
                        "type": "integer",
                        "description": "Number of users that have this role.\n"
                    },
                    "validate": {
                        "type": "boolean",
                        "description": "If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skip the validation call done during plan.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/rumApplication:RumApplication": {
            "description": "Provides a Datadog RUM application resource. This can be used to create and manage Datadog RUM applications.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst rumApplication = new datadog.RumApplication(\"rum_application\", {\n    name: \"my-application\",\n    type: \"browser\",\n    rumEventProcessingState: \"ALL\",\n    productAnalyticsRetentionState: \"NONE\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nrum_application = datadog.RumApplication(\"rum_application\",\n    name=\"my-application\",\n    type=\"browser\",\n    rum_event_processing_state=\"ALL\",\n    product_analytics_retention_state=\"NONE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var rumApplication = new Datadog.RumApplication(\"rum_application\", new()\n    {\n        Name = \"my-application\",\n        Type = \"browser\",\n        RumEventProcessingState = \"ALL\",\n        ProductAnalyticsRetentionState = \"NONE\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewRumApplication(ctx, \"rum_application\", \u0026datadog.RumApplicationArgs{\n\t\t\tName:                           pulumi.String(\"my-application\"),\n\t\t\tType:                           pulumi.String(\"browser\"),\n\t\t\tRumEventProcessingState:        pulumi.String(\"ALL\"),\n\t\t\tProductAnalyticsRetentionState: pulumi.String(\"NONE\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.RumApplication;\nimport com.pulumi.datadog.RumApplicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var rumApplication = new RumApplication(\"rumApplication\", RumApplicationArgs.builder()\n            .name(\"my-application\")\n            .type(\"browser\")\n            .rumEventProcessingState(\"ALL\")\n            .productAnalyticsRetentionState(\"NONE\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  rumApplication:\n    type: datadog:RumApplication\n    name: rum_application\n    properties:\n      name: my-application\n      type: browser\n      rumEventProcessingState: ALL\n      productAnalyticsRetentionState: NONE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/rumApplication:RumApplication rum_application a1b2c3d4-a1b2-a1b2-a1b2-a1b2c3d4e5f6\n```\n\n",
            "properties": {
                "apiKeyId": {
                    "type": "integer",
                    "description": "ID of the API key associated with the application.\n"
                },
                "clientToken": {
                    "type": "string",
                    "description": "The client token.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the RUM application.\n"
                },
                "productAnalyticsRetentionState": {
                    "type": "string",
                    "description": "Controls the retention policy for Product Analytics data derived from RUM events. Valid values are `MAX`, `NONE`.\n"
                },
                "rumEventProcessingState": {
                    "type": "string",
                    "description": "Configures which RUM events are processed and stored for the application. Valid values are `ALL`, `ERROR_FOCUSED_MODE`, `NONE`.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the RUM application. Supported values are \u003cspan pulumi-lang-nodejs=\"`browser`\" pulumi-lang-dotnet=\"`Browser`\" pulumi-lang-go=\"`browser`\" pulumi-lang-python=\"`browser`\" pulumi-lang-yaml=\"`browser`\" pulumi-lang-java=\"`browser`\"\u003e`browser`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ios`\" pulumi-lang-dotnet=\"`Ios`\" pulumi-lang-go=\"`ios`\" pulumi-lang-python=\"`ios`\" pulumi-lang-yaml=\"`ios`\" pulumi-lang-java=\"`ios`\"\u003e`ios`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`android`\" pulumi-lang-dotnet=\"`Android`\" pulumi-lang-go=\"`android`\" pulumi-lang-python=\"`android`\" pulumi-lang-yaml=\"`android`\" pulumi-lang-java=\"`android`\"\u003e`android`\u003c/span\u003e, `react-native`, \u003cspan pulumi-lang-nodejs=\"`flutter`\" pulumi-lang-dotnet=\"`Flutter`\" pulumi-lang-go=\"`flutter`\" pulumi-lang-python=\"`flutter`\" pulumi-lang-yaml=\"`flutter`\" pulumi-lang-java=\"`flutter`\"\u003e`flutter`\u003c/span\u003e. Defaults to `\"browser\"`.\n"
                }
            },
            "required": [
                "apiKeyId",
                "clientToken",
                "name",
                "productAnalyticsRetentionState",
                "rumEventProcessingState",
                "type"
            ],
            "inputProperties": {
                "name": {
                    "type": "string",
                    "description": "Name of the RUM application.\n"
                },
                "productAnalyticsRetentionState": {
                    "type": "string",
                    "description": "Controls the retention policy for Product Analytics data derived from RUM events. Valid values are `MAX`, `NONE`.\n"
                },
                "rumEventProcessingState": {
                    "type": "string",
                    "description": "Configures which RUM events are processed and stored for the application. Valid values are `ALL`, `ERROR_FOCUSED_MODE`, `NONE`.\n"
                },
                "type": {
                    "type": "string",
                    "description": "Type of the RUM application. Supported values are \u003cspan pulumi-lang-nodejs=\"`browser`\" pulumi-lang-dotnet=\"`Browser`\" pulumi-lang-go=\"`browser`\" pulumi-lang-python=\"`browser`\" pulumi-lang-yaml=\"`browser`\" pulumi-lang-java=\"`browser`\"\u003e`browser`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ios`\" pulumi-lang-dotnet=\"`Ios`\" pulumi-lang-go=\"`ios`\" pulumi-lang-python=\"`ios`\" pulumi-lang-yaml=\"`ios`\" pulumi-lang-java=\"`ios`\"\u003e`ios`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`android`\" pulumi-lang-dotnet=\"`Android`\" pulumi-lang-go=\"`android`\" pulumi-lang-python=\"`android`\" pulumi-lang-yaml=\"`android`\" pulumi-lang-java=\"`android`\"\u003e`android`\u003c/span\u003e, `react-native`, \u003cspan pulumi-lang-nodejs=\"`flutter`\" pulumi-lang-dotnet=\"`Flutter`\" pulumi-lang-go=\"`flutter`\" pulumi-lang-python=\"`flutter`\" pulumi-lang-yaml=\"`flutter`\" pulumi-lang-java=\"`flutter`\"\u003e`flutter`\u003c/span\u003e. Defaults to `\"browser\"`.\n"
                }
            },
            "requiredInputs": [
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RumApplication resources.\n",
                "properties": {
                    "apiKeyId": {
                        "type": "integer",
                        "description": "ID of the API key associated with the application.\n"
                    },
                    "clientToken": {
                        "type": "string",
                        "description": "The client token.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the RUM application.\n"
                    },
                    "productAnalyticsRetentionState": {
                        "type": "string",
                        "description": "Controls the retention policy for Product Analytics data derived from RUM events. Valid values are `MAX`, `NONE`.\n"
                    },
                    "rumEventProcessingState": {
                        "type": "string",
                        "description": "Configures which RUM events are processed and stored for the application. Valid values are `ALL`, `ERROR_FOCUSED_MODE`, `NONE`.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "Type of the RUM application. Supported values are \u003cspan pulumi-lang-nodejs=\"`browser`\" pulumi-lang-dotnet=\"`Browser`\" pulumi-lang-go=\"`browser`\" pulumi-lang-python=\"`browser`\" pulumi-lang-yaml=\"`browser`\" pulumi-lang-java=\"`browser`\"\u003e`browser`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ios`\" pulumi-lang-dotnet=\"`Ios`\" pulumi-lang-go=\"`ios`\" pulumi-lang-python=\"`ios`\" pulumi-lang-yaml=\"`ios`\" pulumi-lang-java=\"`ios`\"\u003e`ios`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`android`\" pulumi-lang-dotnet=\"`Android`\" pulumi-lang-go=\"`android`\" pulumi-lang-python=\"`android`\" pulumi-lang-yaml=\"`android`\" pulumi-lang-java=\"`android`\"\u003e`android`\u003c/span\u003e, `react-native`, \u003cspan pulumi-lang-nodejs=\"`flutter`\" pulumi-lang-dotnet=\"`Flutter`\" pulumi-lang-go=\"`flutter`\" pulumi-lang-python=\"`flutter`\" pulumi-lang-yaml=\"`flutter`\" pulumi-lang-java=\"`flutter`\"\u003e`flutter`\u003c/span\u003e. Defaults to `\"browser\"`.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/rumMetric:RumMetric": {
            "description": "Provides a Datadog RumMetric resource. This can be used to create and manage Datadog rum_metric.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new rum_metric resource\nconst testingRumMetric = new datadog.RumMetric(\"testing_rum_metric\", {\n    name: \"testing.rum.metric\",\n    compute: [{\n        aggregationType: \"distribution\",\n        includePercentiles: true,\n        path: \"@duration\",\n    }],\n    eventType: \"session\",\n    filter: [{\n        query: \"@service:web-ui\",\n    }],\n    groupBies: [{\n        path: \"@browser.name\",\n        tagName: \"browser_name\",\n    }],\n    uniqueness: [{\n        when: \"match\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new rum_metric resource\ntesting_rum_metric = datadog.RumMetric(\"testing_rum_metric\",\n    name=\"testing.rum.metric\",\n    compute=[{\n        \"aggregationType\": \"distribution\",\n        \"includePercentiles\": True,\n        \"path\": \"@duration\",\n    }],\n    event_type=\"session\",\n    filter=[{\n        \"query\": \"@service:web-ui\",\n    }],\n    group_bies=[{\n        \"path\": \"@browser.name\",\n        \"tag_name\": \"browser_name\",\n    }],\n    uniqueness=[{\n        \"when\": \"match\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new rum_metric resource\n    var testingRumMetric = new Datadog.RumMetric(\"testing_rum_metric\", new()\n    {\n        Name = \"testing.rum.metric\",\n        Compute = new[]\n        {\n            \n            {\n                { \"aggregationType\", \"distribution\" },\n                { \"includePercentiles\", true },\n                { \"path\", \"@duration\" },\n            },\n        },\n        EventType = \"session\",\n        Filter = new[]\n        {\n            \n            {\n                { \"query\", \"@service:web-ui\" },\n            },\n        },\n        GroupBies = new[]\n        {\n            new Datadog.Inputs.RumMetricGroupByArgs\n            {\n                Path = \"@browser.name\",\n                TagName = \"browser_name\",\n            },\n        },\n        Uniqueness = new[]\n        {\n            \n            {\n                { \"when\", \"match\" },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new rum_metric resource\n\t\t_, err := datadog.NewRumMetric(ctx, \"testing_rum_metric\", \u0026datadog.RumMetricArgs{\n\t\t\tName: pulumi.String(\"testing.rum.metric\"),\n\t\t\tCompute: datadog.RumMetricComputeArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"aggregationType\":    \"distribution\",\n\t\t\t\t\t\"includePercentiles\": true,\n\t\t\t\t\t\"path\":               \"@duration\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tEventType: pulumi.String(\"session\"),\n\t\t\tFilter: datadog.RumMetricFilterArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"query\": \"@service:web-ui\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tGroupBies: datadog.RumMetricGroupByArray{\n\t\t\t\t\u0026datadog.RumMetricGroupByArgs{\n\t\t\t\t\tPath:    pulumi.String(\"@browser.name\"),\n\t\t\t\t\tTagName: pulumi.String(\"browser_name\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tUniqueness: datadog.RumMetricUniquenessArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"when\": \"match\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.RumMetric;\nimport com.pulumi.datadog.RumMetricArgs;\nimport com.pulumi.datadog.inputs.RumMetricGroupByArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new rum_metric resource\n        var testingRumMetric = new RumMetric(\"testingRumMetric\", RumMetricArgs.builder()\n            .name(\"testing.rum.metric\")\n            .compute(RumMetricComputeArgs.builder()\n                .aggregationType(\"distribution\")\n                .includePercentiles(true)\n                .path(\"@duration\")\n                .build())\n            .eventType(\"session\")\n            .filter(RumMetricFilterArgs.builder()\n                .query(\"@service:web-ui\")\n                .build())\n            .groupBies(RumMetricGroupByArgs.builder()\n                .path(\"@browser.name\")\n                .tagName(\"browser_name\")\n                .build())\n            .uniqueness(RumMetricUniquenessArgs.builder()\n                .when(\"match\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new rum_metric resource\n  testingRumMetric:\n    type: datadog:RumMetric\n    name: testing_rum_metric\n    properties:\n      name: testing.rum.metric\n      compute:\n        - aggregationType: distribution\n          includePercentiles: true\n          path: '@duration'\n      eventType: session\n      filter:\n        - query: '@service:web-ui'\n      groupBies:\n        - path: '@browser.name'\n          tagName: browser_name\n      uniqueness:\n        - when: match\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/rumMetric:RumMetric testing_rum_metric \"testing.rum.metric\"\n```\n\n",
            "properties": {
                "compute": {
                    "$ref": "#/types/datadog:index/RumMetricCompute:RumMetricCompute"
                },
                "eventType": {
                    "type": "string",
                    "description": "The type of RUM events to filter on.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/RumMetricFilter:RumMetricFilter"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/RumMetricGroupBy:RumMetricGroupBy"
                    }
                },
                "name": {
                    "type": "string",
                    "description": "The name of the RUM-based metric. This field can't be updated after creation.\n"
                },
                "uniqueness": {
                    "$ref": "#/types/datadog:index/RumMetricUniqueness:RumMetricUniqueness"
                }
            },
            "required": [
                "eventType",
                "name"
            ],
            "inputProperties": {
                "compute": {
                    "$ref": "#/types/datadog:index/RumMetricCompute:RumMetricCompute"
                },
                "eventType": {
                    "type": "string",
                    "description": "The type of RUM events to filter on.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/RumMetricFilter:RumMetricFilter"
                },
                "groupBies": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/RumMetricGroupBy:RumMetricGroupBy"
                    }
                },
                "name": {
                    "type": "string",
                    "description": "The name of the RUM-based metric. This field can't be updated after creation.\n"
                },
                "uniqueness": {
                    "$ref": "#/types/datadog:index/RumMetricUniqueness:RumMetricUniqueness"
                }
            },
            "requiredInputs": [
                "eventType",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RumMetric resources.\n",
                "properties": {
                    "compute": {
                        "$ref": "#/types/datadog:index/RumMetricCompute:RumMetricCompute"
                    },
                    "eventType": {
                        "type": "string",
                        "description": "The type of RUM events to filter on.\n"
                    },
                    "filter": {
                        "$ref": "#/types/datadog:index/RumMetricFilter:RumMetricFilter"
                    },
                    "groupBies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/RumMetricGroupBy:RumMetricGroupBy"
                        }
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the RUM-based metric. This field can't be updated after creation.\n"
                    },
                    "uniqueness": {
                        "$ref": "#/types/datadog:index/RumMetricUniqueness:RumMetricUniqueness"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/rumRetentionFilter:RumRetentionFilter": {
            "description": "Provides a Datadog RumRetentionFilter resource. This can be used to create and manage Datadog rum_retention_filter.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new rum_retention_filter resource\nconst testingRumRetentionFilter = new datadog.RumRetentionFilter(\"testing_rum_retention_filter\", {\n    applicationId: \"\u003cAPPLICATION_ID\u003e\",\n    name: \"testing.rum.retention_filter\",\n    eventType: \"session\",\n    sampleRate: 41,\n    query: \"@session.has_replay:true\",\n    enabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new rum_retention_filter resource\ntesting_rum_retention_filter = datadog.RumRetentionFilter(\"testing_rum_retention_filter\",\n    application_id=\"\u003cAPPLICATION_ID\u003e\",\n    name=\"testing.rum.retention_filter\",\n    event_type=\"session\",\n    sample_rate=41,\n    query=\"@session.has_replay:true\",\n    enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new rum_retention_filter resource\n    var testingRumRetentionFilter = new Datadog.RumRetentionFilter(\"testing_rum_retention_filter\", new()\n    {\n        ApplicationId = \"\u003cAPPLICATION_ID\u003e\",\n        Name = \"testing.rum.retention_filter\",\n        EventType = \"session\",\n        SampleRate = 41,\n        Query = \"@session.has_replay:true\",\n        Enabled = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new rum_retention_filter resource\n\t\t_, err := datadog.NewRumRetentionFilter(ctx, \"testing_rum_retention_filter\", \u0026datadog.RumRetentionFilterArgs{\n\t\t\tApplicationId: pulumi.String(\"\u003cAPPLICATION_ID\u003e\"),\n\t\t\tName:          pulumi.String(\"testing.rum.retention_filter\"),\n\t\t\tEventType:     pulumi.String(\"session\"),\n\t\t\tSampleRate:    pulumi.Float64(41),\n\t\t\tQuery:         pulumi.String(\"@session.has_replay:true\"),\n\t\t\tEnabled:       pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.RumRetentionFilter;\nimport com.pulumi.datadog.RumRetentionFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new rum_retention_filter resource\n        var testingRumRetentionFilter = new RumRetentionFilter(\"testingRumRetentionFilter\", RumRetentionFilterArgs.builder()\n            .applicationId(\"\u003cAPPLICATION_ID\u003e\")\n            .name(\"testing.rum.retention_filter\")\n            .eventType(\"session\")\n            .sampleRate(41.0)\n            .query(\"@session.has_replay:true\")\n            .enabled(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new rum_retention_filter resource\n  testingRumRetentionFilter:\n    type: datadog:RumRetentionFilter\n    name: testing_rum_retention_filter\n    properties:\n      applicationId: \u003cAPPLICATION_ID\u003e\n      name: testing.rum.retention_filter\n      eventType: session\n      sampleRate: 41\n      query: '@session.has_replay:true'\n      enabled: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/rumRetentionFilter:RumRetentionFilter testing_rum_retention_filter \"\u003capplication_id\u003e:\u003cretention_filter_id\u003e\"\n```\n\n",
            "properties": {
                "applicationId": {
                    "type": "string",
                    "description": "RUM application ID.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the retention filter is to be enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "eventType": {
                    "type": "string",
                    "description": "The type of RUM events to filter on.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of a RUM retention filter.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The Query string for a RUM retention filter. Defaults to `\"\"`.\n"
                },
                "sampleRate": {
                    "type": "number",
                    "description": "The sample rate for a RUM retention filter, between 0.1 and 100. Supports one decimal place (for example, 50.5).\n"
                }
            },
            "required": [
                "applicationId",
                "enabled",
                "eventType",
                "name",
                "query",
                "sampleRate"
            ],
            "inputProperties": {
                "applicationId": {
                    "type": "string",
                    "description": "RUM application ID.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the retention filter is to be enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "eventType": {
                    "type": "string",
                    "description": "The type of RUM events to filter on.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of a RUM retention filter.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The Query string for a RUM retention filter. Defaults to `\"\"`.\n"
                },
                "sampleRate": {
                    "type": "number",
                    "description": "The sample rate for a RUM retention filter, between 0.1 and 100. Supports one decimal place (for example, 50.5).\n"
                }
            },
            "requiredInputs": [
                "applicationId",
                "eventType",
                "name",
                "sampleRate"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RumRetentionFilter resources.\n",
                "properties": {
                    "applicationId": {
                        "type": "string",
                        "description": "RUM application ID.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the retention filter is to be enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "eventType": {
                        "type": "string",
                        "description": "The type of RUM events to filter on.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of a RUM retention filter.\n"
                    },
                    "query": {
                        "type": "string",
                        "description": "The Query string for a RUM retention filter. Defaults to `\"\"`.\n"
                    },
                    "sampleRate": {
                        "type": "number",
                        "description": "The sample rate for a RUM retention filter, between 0.1 and 100. Supports one decimal place (for example, 50.5).\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/rumRetentionFiltersOrder:RumRetentionFiltersOrder": {
            "description": "Provides a Datadog RumRetentionFiltersOrder resource. This is used to manage the order of Datadog RUM retention filters. Please note that\u003cspan pulumi-lang-nodejs=\" retentionFilterIds \" pulumi-lang-dotnet=\" RetentionFilterIds \" pulumi-lang-go=\" retentionFilterIds \" pulumi-lang-python=\" retention_filter_ids \" pulumi-lang-yaml=\" retentionFilterIds \" pulumi-lang-java=\" retentionFilterIds \"\u003e retentionFilterIds \u003c/span\u003eshould contain all IDs of retention filters, including the default ones created internally for a given RUM application.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\nimport * as std from \"@pulumi/std\";\n\n// Create a new rum_application resource.\nconst myRumApplication = new datadog.RumApplication(\"my_rum_application\", {\n    name: \"my-rum-application-test\",\n    type: \"browser\",\n});\n// Retrieve rum_retention_filters for the rum_application created above.\nconst myRetentionFilters = datadog.getRumRetentionFilters({\n    applicationId: datadogRumApplication.myRumApplication.id,\n});\n// Create a new rum_retention_filter resource.\nconst newRumRetentionFilter = new datadog.RumRetentionFilter(\"new_rum_retention_filter\", {\n    applicationId: datadogRumApplication.myRumApplication.id,\n    name: \"testing.rum.retention_filter\",\n    eventType: \"action\",\n    sampleRate: 60,\n    query: \"@session.has_replay:true\",\n    enabled: true,\n});\n// Create a new rum_retention_filters_order resource for reordering.\n// Please note that the IDs of all default retention filters have the prefix 'default', and you need to populate the retention_filter_ids field with all retention filter IDs.\nconst myRumRetentionFiltersOrder = new datadog.RumRetentionFiltersOrder(\"my_rum_retention_filters_order\", {\n    applicationId: datadogRumApplication.myRumApplication.id,\n    retentionFilterIds: std.index.concat({\n        input: [\n            myRetentionFilters.then(myRetentionFilters =\u003e .filter(rf =\u003e std.index.startswith({\n                input: rf.id,\n                prefix: \"default\",\n            }).result).map(rf =\u003e (rf.id))),\n            [newRumRetentionFilter.id],\n            pulumi.all([myRetentionFilters, newRumRetentionFilter.id]).apply(([myRetentionFilters, id]) =\u003e .filter(rf =\u003e !std.index.startswith({\n                input: rf.id,\n                prefix: \"default\",\n            }).result \u0026\u0026 rf.id != id).map(rf =\u003e (rf.id))),\n        ],\n    }).result,\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\nimport pulumi_std as std\n\n# Create a new rum_application resource.\nmy_rum_application = datadog.RumApplication(\"my_rum_application\",\n    name=\"my-rum-application-test\",\n    type=\"browser\")\n# Retrieve rum_retention_filters for the rum_application created above.\nmy_retention_filters = datadog.get_rum_retention_filters(application_id=datadog_rum_application[\"myRumApplication\"][\"id\"])\n# Create a new rum_retention_filter resource.\nnew_rum_retention_filter = datadog.RumRetentionFilter(\"new_rum_retention_filter\",\n    application_id=datadog_rum_application[\"myRumApplication\"][\"id\"],\n    name=\"testing.rum.retention_filter\",\n    event_type=\"action\",\n    sample_rate=60,\n    query=\"@session.has_replay:true\",\n    enabled=True)\n# Create a new rum_retention_filters_order resource for reordering.\n# Please note that the IDs of all default retention filters have the prefix 'default', and you need to populate the retention_filter_ids field with all retention filter IDs.\nmy_rum_retention_filters_order = datadog.RumRetentionFiltersOrder(\"my_rum_retention_filters_order\",\n    application_id=datadog_rum_application[\"myRumApplication\"][\"id\"],\n    retention_filter_ids=std.index.concat(input=[\n        [rf.id for rf in my_retention_filters.retention_filters if std.index.startswith(input=rf.id,\n            prefix=\"default\")[\"result\"]],\n        [new_rum_retention_filter.id],\n        [rf.id for rf in my_retention_filters.retention_filters if not std.index.startswith(input=rf.id,\n            prefix=\"default\")[\"result\"] and rf.id != _arg0_],\n    ])[\"result\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create a new rum_application resource.\n    var myRumApplication = new Datadog.RumApplication(\"my_rum_application\", new()\n    {\n        Name = \"my-rum-application-test\",\n        Type = \"browser\",\n    });\n\n    // Retrieve rum_retention_filters for the rum_application created above.\n    var myRetentionFilters = Datadog.GetRumRetentionFilters.Invoke(new()\n    {\n        ApplicationId = datadogRumApplication.MyRumApplication.Id,\n    });\n\n    // Create a new rum_retention_filter resource.\n    var newRumRetentionFilter = new Datadog.RumRetentionFilter(\"new_rum_retention_filter\", new()\n    {\n        ApplicationId = datadogRumApplication.MyRumApplication.Id,\n        Name = \"testing.rum.retention_filter\",\n        EventType = \"action\",\n        SampleRate = 60,\n        Query = \"@session.has_replay:true\",\n        Enabled = true,\n    });\n\n    // Create a new rum_retention_filters_order resource for reordering.\n    // Please note that the IDs of all default retention filters have the prefix 'default', and you need to populate the retention_filter_ids field with all retention filter IDs.\n    var myRumRetentionFiltersOrder = new Datadog.RumRetentionFiltersOrder(\"my_rum_retention_filters_order\", new()\n    {\n        ApplicationId = datadogRumApplication.MyRumApplication.Id,\n        RetentionFilterIds = Std.Index.Concat.Invoke(new()\n        {\n            Input = new[]\n            {\n                .Where(rf =\u003e Std.Index.Startswith.Invoke(new()\n                {\n                    Input = rf.Id,\n                    Prefix = \"default\",\n                }).Result).Select(rf =\u003e \n                {\n                    return rf.Id;\n                }).ToList(),\n                new[]\n                {\n                    newRumRetentionFilter.Id,\n                },\n                Output.Tuple(myRetentionFilters, newRumRetentionFilter.Id).Apply(values =\u003e\n                {\n                    var myRetentionFilters = values.Item1;\n                    var id = values.Item2;\n                    return .Where(rf =\u003e !Std.Index.Startswith.Invoke(new()\n                    {\n                        Input = rf.Id,\n                        Prefix = \"default\",\n                    }).Result \u0026\u0026 rf.Id != id).Select(rf =\u003e \n                    {\n                        return rf.Id;\n                    }).ToList();\n                }),\n            },\n        }).Result,\n    });\n\n});\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/rumRetentionFiltersOrder:RumRetentionFiltersOrder testing_rum_retention_filters_order \"\u003capplication_id\u003e\"\n```\n\n",
            "properties": {
                "applicationId": {
                    "type": "string",
                    "description": "RUM application ID.\n"
                },
                "retentionFilterIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "RUM retention filter ID list. The order of IDs in this attribute defines the order of RUM retention filters.\n"
                }
            },
            "required": [
                "applicationId",
                "retentionFilterIds"
            ],
            "inputProperties": {
                "applicationId": {
                    "type": "string",
                    "description": "RUM application ID.\n"
                },
                "retentionFilterIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "RUM retention filter ID list. The order of IDs in this attribute defines the order of RUM retention filters.\n"
                }
            },
            "requiredInputs": [
                "applicationId",
                "retentionFilterIds"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering RumRetentionFiltersOrder resources.\n",
                "properties": {
                    "applicationId": {
                        "type": "string",
                        "description": "RUM application ID.\n"
                    },
                    "retentionFilterIds": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "RUM retention filter ID list. The order of IDs in this attribute defines the order of RUM retention filters.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/secureEmbedDashboard:SecureEmbedDashboard": {
            "description": "Manages a Datadog secure embed shared dashboard. NOTE: The HMAC \u003cspan pulumi-lang-nodejs=\"`credential`\" pulumi-lang-dotnet=\"`Credential`\" pulumi-lang-go=\"`credential`\" pulumi-lang-python=\"`credential`\" pulumi-lang-yaml=\"`credential`\" pulumi-lang-java=\"`credential`\"\u003e`credential`\u003c/span\u003e is only returned by the API once on creation and is stored in Terraform state. Ensure your state backend uses encryption at rest and has appropriate access controls.\n",
            "properties": {
                "credential": {
                    "type": "string",
                    "description": "The HMAC credential granting access to this secure embed. Only available on initial creation; stored in state.\n",
                    "secret": true
                },
                "dashboardId": {
                    "type": "string",
                    "description": "The ID of the dashboard to create a secure embed for.\n"
                },
                "globalTimeLiveSpan": {
                    "type": "string",
                    "description": "The live span for the global time, e.g. \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e. Defaults to `\"1h\"`.\n"
                },
                "globalTimeSelectable": {
                    "type": "boolean",
                    "description": "Whether viewers can change the global time range. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "selectableTemplateVars": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecureEmbedDashboardSelectableTemplateVar:SecureEmbedDashboardSelectableTemplateVar"
                    },
                    "description": "Template variables that viewers can filter by.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the secure embed. Valid values are \u003cspan pulumi-lang-nodejs=\"`active`\" pulumi-lang-dotnet=\"`Active`\" pulumi-lang-go=\"`active`\" pulumi-lang-python=\"`active`\" pulumi-lang-yaml=\"`active`\" pulumi-lang-java=\"`active`\"\u003e`active`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`paused`\" pulumi-lang-dotnet=\"`Paused`\" pulumi-lang-go=\"`paused`\" pulumi-lang-python=\"`paused`\" pulumi-lang-yaml=\"`paused`\" pulumi-lang-java=\"`paused`\"\u003e`paused`\u003c/span\u003e. Defaults to `\"active\"`.\n"
                },
                "title": {
                    "type": "string",
                    "description": "Title of the secure embed share.\n"
                },
                "token": {
                    "type": "string",
                    "description": "The share token for the secure embed.\n"
                },
                "url": {
                    "type": "string",
                    "description": "The public URL for the embedded dashboard.\n"
                },
                "viewingPreferencesHighDensity": {
                    "type": "boolean",
                    "description": "Whether to display the dashboard in high density mode. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "viewingPreferencesTheme": {
                    "type": "string",
                    "description": "Display theme for the embedded dashboard. Valid values are \u003cspan pulumi-lang-nodejs=\"`system`\" pulumi-lang-dotnet=\"`System`\" pulumi-lang-go=\"`system`\" pulumi-lang-python=\"`system`\" pulumi-lang-yaml=\"`system`\" pulumi-lang-java=\"`system`\"\u003e`system`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dark`\" pulumi-lang-dotnet=\"`Dark`\" pulumi-lang-go=\"`dark`\" pulumi-lang-python=\"`dark`\" pulumi-lang-yaml=\"`dark`\" pulumi-lang-java=\"`dark`\"\u003e`dark`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`light`\" pulumi-lang-dotnet=\"`Light`\" pulumi-lang-go=\"`light`\" pulumi-lang-python=\"`light`\" pulumi-lang-yaml=\"`light`\" pulumi-lang-java=\"`light`\"\u003e`light`\u003c/span\u003e. Defaults to `\"system\"`.\n"
                }
            },
            "required": [
                "credential",
                "dashboardId",
                "globalTimeLiveSpan",
                "globalTimeSelectable",
                "status",
                "title",
                "token",
                "url",
                "viewingPreferencesHighDensity",
                "viewingPreferencesTheme"
            ],
            "inputProperties": {
                "dashboardId": {
                    "type": "string",
                    "description": "The ID of the dashboard to create a secure embed for.\n"
                },
                "globalTimeLiveSpan": {
                    "type": "string",
                    "description": "The live span for the global time, e.g. \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e. Defaults to `\"1h\"`.\n"
                },
                "globalTimeSelectable": {
                    "type": "boolean",
                    "description": "Whether viewers can change the global time range. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "selectableTemplateVars": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecureEmbedDashboardSelectableTemplateVar:SecureEmbedDashboardSelectableTemplateVar"
                    },
                    "description": "Template variables that viewers can filter by.\n"
                },
                "status": {
                    "type": "string",
                    "description": "Status of the secure embed. Valid values are \u003cspan pulumi-lang-nodejs=\"`active`\" pulumi-lang-dotnet=\"`Active`\" pulumi-lang-go=\"`active`\" pulumi-lang-python=\"`active`\" pulumi-lang-yaml=\"`active`\" pulumi-lang-java=\"`active`\"\u003e`active`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`paused`\" pulumi-lang-dotnet=\"`Paused`\" pulumi-lang-go=\"`paused`\" pulumi-lang-python=\"`paused`\" pulumi-lang-yaml=\"`paused`\" pulumi-lang-java=\"`paused`\"\u003e`paused`\u003c/span\u003e. Defaults to `\"active\"`.\n"
                },
                "title": {
                    "type": "string",
                    "description": "Title of the secure embed share.\n"
                },
                "viewingPreferencesHighDensity": {
                    "type": "boolean",
                    "description": "Whether to display the dashboard in high density mode. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "viewingPreferencesTheme": {
                    "type": "string",
                    "description": "Display theme for the embedded dashboard. Valid values are \u003cspan pulumi-lang-nodejs=\"`system`\" pulumi-lang-dotnet=\"`System`\" pulumi-lang-go=\"`system`\" pulumi-lang-python=\"`system`\" pulumi-lang-yaml=\"`system`\" pulumi-lang-java=\"`system`\"\u003e`system`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dark`\" pulumi-lang-dotnet=\"`Dark`\" pulumi-lang-go=\"`dark`\" pulumi-lang-python=\"`dark`\" pulumi-lang-yaml=\"`dark`\" pulumi-lang-java=\"`dark`\"\u003e`dark`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`light`\" pulumi-lang-dotnet=\"`Light`\" pulumi-lang-go=\"`light`\" pulumi-lang-python=\"`light`\" pulumi-lang-yaml=\"`light`\" pulumi-lang-java=\"`light`\"\u003e`light`\u003c/span\u003e. Defaults to `\"system\"`.\n"
                }
            },
            "requiredInputs": [
                "dashboardId",
                "title"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SecureEmbedDashboard resources.\n",
                "properties": {
                    "credential": {
                        "type": "string",
                        "description": "The HMAC credential granting access to this secure embed. Only available on initial creation; stored in state.\n",
                        "secret": true
                    },
                    "dashboardId": {
                        "type": "string",
                        "description": "The ID of the dashboard to create a secure embed for.\n"
                    },
                    "globalTimeLiveSpan": {
                        "type": "string",
                        "description": "The live span for the global time, e.g. \u003cspan pulumi-lang-nodejs=\"`1h`\" pulumi-lang-dotnet=\"`1h`\" pulumi-lang-go=\"`1h`\" pulumi-lang-python=\"`1h`\" pulumi-lang-yaml=\"`1h`\" pulumi-lang-java=\"`1h`\"\u003e`1h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`4h`\" pulumi-lang-dotnet=\"`4h`\" pulumi-lang-go=\"`4h`\" pulumi-lang-python=\"`4h`\" pulumi-lang-yaml=\"`4h`\" pulumi-lang-java=\"`4h`\"\u003e`4h`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1d`\" pulumi-lang-dotnet=\"`1d`\" pulumi-lang-go=\"`1d`\" pulumi-lang-python=\"`1d`\" pulumi-lang-yaml=\"`1d`\" pulumi-lang-java=\"`1d`\"\u003e`1d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`2d`\" pulumi-lang-dotnet=\"`2d`\" pulumi-lang-go=\"`2d`\" pulumi-lang-python=\"`2d`\" pulumi-lang-yaml=\"`2d`\" pulumi-lang-java=\"`2d`\"\u003e`2d`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`1w`\" pulumi-lang-dotnet=\"`1w`\" pulumi-lang-go=\"`1w`\" pulumi-lang-python=\"`1w`\" pulumi-lang-yaml=\"`1w`\" pulumi-lang-java=\"`1w`\"\u003e`1w`\u003c/span\u003e. Defaults to `\"1h\"`.\n"
                    },
                    "globalTimeSelectable": {
                        "type": "boolean",
                        "description": "Whether viewers can change the global time range. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "selectableTemplateVars": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecureEmbedDashboardSelectableTemplateVar:SecureEmbedDashboardSelectableTemplateVar"
                        },
                        "description": "Template variables that viewers can filter by.\n"
                    },
                    "status": {
                        "type": "string",
                        "description": "Status of the secure embed. Valid values are \u003cspan pulumi-lang-nodejs=\"`active`\" pulumi-lang-dotnet=\"`Active`\" pulumi-lang-go=\"`active`\" pulumi-lang-python=\"`active`\" pulumi-lang-yaml=\"`active`\" pulumi-lang-java=\"`active`\"\u003e`active`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`paused`\" pulumi-lang-dotnet=\"`Paused`\" pulumi-lang-go=\"`paused`\" pulumi-lang-python=\"`paused`\" pulumi-lang-yaml=\"`paused`\" pulumi-lang-java=\"`paused`\"\u003e`paused`\u003c/span\u003e. Defaults to `\"active\"`.\n"
                    },
                    "title": {
                        "type": "string",
                        "description": "Title of the secure embed share.\n"
                    },
                    "token": {
                        "type": "string",
                        "description": "The share token for the secure embed.\n"
                    },
                    "url": {
                        "type": "string",
                        "description": "The public URL for the embedded dashboard.\n"
                    },
                    "viewingPreferencesHighDensity": {
                        "type": "boolean",
                        "description": "Whether to display the dashboard in high density mode. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "viewingPreferencesTheme": {
                        "type": "string",
                        "description": "Display theme for the embedded dashboard. Valid values are \u003cspan pulumi-lang-nodejs=\"`system`\" pulumi-lang-dotnet=\"`System`\" pulumi-lang-go=\"`system`\" pulumi-lang-python=\"`system`\" pulumi-lang-yaml=\"`system`\" pulumi-lang-java=\"`system`\"\u003e`system`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dark`\" pulumi-lang-dotnet=\"`Dark`\" pulumi-lang-go=\"`dark`\" pulumi-lang-python=\"`dark`\" pulumi-lang-yaml=\"`dark`\" pulumi-lang-java=\"`dark`\"\u003e`dark`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`light`\" pulumi-lang-dotnet=\"`Light`\" pulumi-lang-go=\"`light`\" pulumi-lang-python=\"`light`\" pulumi-lang-yaml=\"`light`\" pulumi-lang-java=\"`light`\"\u003e`light`\u003c/span\u003e. Defaults to `\"system\"`.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/securityMonitoringCriticalAsset:SecurityMonitoringCriticalAsset": {
            "description": "Provides a Datadog Security Monitoring Critical Asset resource. It can be used to create and manage critical assets which modify the severity of a signal.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst myCriticalAsset = new datadog.SecurityMonitoringCriticalAsset(\"my_critical_asset\", {\n    enabled: true,\n    query: \"source:runtime-security-agent\",\n    ruleQuery: \"type:(log_detection OR signal_correlation OR workload_security OR application_security) ruleId:007-d1a-1f3\",\n    severity: \"increase\",\n    tags: [\n        \"env:production\",\n        \"team:security\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmy_critical_asset = datadog.SecurityMonitoringCriticalAsset(\"my_critical_asset\",\n    enabled=True,\n    query=\"source:runtime-security-agent\",\n    rule_query=\"type:(log_detection OR signal_correlation OR workload_security OR application_security) ruleId:007-d1a-1f3\",\n    severity=\"increase\",\n    tags=[\n        \"env:production\",\n        \"team:security\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCriticalAsset = new Datadog.SecurityMonitoringCriticalAsset(\"my_critical_asset\", new()\n    {\n        Enabled = true,\n        Query = \"source:runtime-security-agent\",\n        RuleQuery = \"type:(log_detection OR signal_correlation OR workload_security OR application_security) ruleId:007-d1a-1f3\",\n        Severity = \"increase\",\n        Tags = new[]\n        {\n            \"env:production\",\n            \"team:security\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewSecurityMonitoringCriticalAsset(ctx, \"my_critical_asset\", \u0026datadog.SecurityMonitoringCriticalAssetArgs{\n\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\tQuery:     pulumi.String(\"source:runtime-security-agent\"),\n\t\t\tRuleQuery: pulumi.String(\"type:(log_detection OR signal_correlation OR workload_security OR application_security) ruleId:007-d1a-1f3\"),\n\t\t\tSeverity:  pulumi.String(\"increase\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"env:production\"),\n\t\t\t\tpulumi.String(\"team:security\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SecurityMonitoringCriticalAsset;\nimport com.pulumi.datadog.SecurityMonitoringCriticalAssetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCriticalAsset = new SecurityMonitoringCriticalAsset(\"myCriticalAsset\", SecurityMonitoringCriticalAssetArgs.builder()\n            .enabled(true)\n            .query(\"source:runtime-security-agent\")\n            .ruleQuery(\"type:(log_detection OR signal_correlation OR workload_security OR application_security) ruleId:007-d1a-1f3\")\n            .severity(\"increase\")\n            .tags(            \n                \"env:production\",\n                \"team:security\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCriticalAsset:\n    type: datadog:SecurityMonitoringCriticalAsset\n    name: my_critical_asset\n    properties:\n      enabled: true\n      query: source:runtime-security-agent\n      ruleQuery: type:(log_detection OR signal_correlation OR workload_security OR application_security) ruleId:007-d1a-1f3\n      severity: increase\n      tags:\n        - env:production\n        - team:security\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/securityMonitoringCriticalAsset:SecurityMonitoringCriticalAsset my_critical_asset \"1dab677c-5eb4-4ac8-b1d3-444bf0117e19\"\n```\n\n",
            "properties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the critical asset is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query used to match a critical asset and the associated signals. Uses the same syntax as the search bar in the Security Signals Explorer.\n"
                },
                "ruleQuery": {
                    "type": "string",
                    "description": "The rule query to filter which detection rules this critical asset applies to. Uses the same syntax as the search bar for detection rules.\n"
                },
                "severity": {
                    "type": "string",
                    "description": "The severity change applied to signals matching this critical asset. Valid values are \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, `no-op`, \u003cspan pulumi-lang-nodejs=\"`increase`\" pulumi-lang-dotnet=\"`Increase`\" pulumi-lang-go=\"`increase`\" pulumi-lang-python=\"`increase`\" pulumi-lang-yaml=\"`increase`\" pulumi-lang-java=\"`increase`\"\u003e`increase`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`decrease`\" pulumi-lang-dotnet=\"`Decrease`\" pulumi-lang-go=\"`decrease`\" pulumi-lang-python=\"`decrease`\" pulumi-lang-yaml=\"`decrease`\" pulumi-lang-java=\"`decrease`\"\u003e`decrease`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags associated with the critical asset.\n"
                }
            },
            "required": [
                "enabled",
                "query",
                "ruleQuery",
                "severity"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the critical asset is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query used to match a critical asset and the associated signals. Uses the same syntax as the search bar in the Security Signals Explorer.\n"
                },
                "ruleQuery": {
                    "type": "string",
                    "description": "The rule query to filter which detection rules this critical asset applies to. Uses the same syntax as the search bar for detection rules.\n"
                },
                "severity": {
                    "type": "string",
                    "description": "The severity change applied to signals matching this critical asset. Valid values are \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, `no-op`, \u003cspan pulumi-lang-nodejs=\"`increase`\" pulumi-lang-dotnet=\"`Increase`\" pulumi-lang-go=\"`increase`\" pulumi-lang-python=\"`increase`\" pulumi-lang-yaml=\"`increase`\" pulumi-lang-java=\"`increase`\"\u003e`increase`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`decrease`\" pulumi-lang-dotnet=\"`Decrease`\" pulumi-lang-go=\"`decrease`\" pulumi-lang-python=\"`decrease`\" pulumi-lang-yaml=\"`decrease`\" pulumi-lang-java=\"`decrease`\"\u003e`decrease`\u003c/span\u003e.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags associated with the critical asset.\n"
                }
            },
            "requiredInputs": [
                "query",
                "ruleQuery",
                "severity"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SecurityMonitoringCriticalAsset resources.\n",
                "properties": {
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the critical asset is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "query": {
                        "type": "string",
                        "description": "The query used to match a critical asset and the associated signals. Uses the same syntax as the search bar in the Security Signals Explorer.\n"
                    },
                    "ruleQuery": {
                        "type": "string",
                        "description": "The rule query to filter which detection rules this critical asset applies to. Uses the same syntax as the search bar for detection rules.\n"
                    },
                    "severity": {
                        "type": "string",
                        "description": "The severity change applied to signals matching this critical asset. Valid values are \u003cspan pulumi-lang-nodejs=\"`critical`\" pulumi-lang-dotnet=\"`Critical`\" pulumi-lang-go=\"`critical`\" pulumi-lang-python=\"`critical`\" pulumi-lang-yaml=\"`critical`\" pulumi-lang-java=\"`critical`\"\u003e`critical`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`high`\" pulumi-lang-dotnet=\"`High`\" pulumi-lang-go=\"`high`\" pulumi-lang-python=\"`high`\" pulumi-lang-yaml=\"`high`\" pulumi-lang-java=\"`high`\"\u003e`high`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`medium`\" pulumi-lang-dotnet=\"`Medium`\" pulumi-lang-go=\"`medium`\" pulumi-lang-python=\"`medium`\" pulumi-lang-yaml=\"`medium`\" pulumi-lang-java=\"`medium`\"\u003e`medium`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`low`\" pulumi-lang-dotnet=\"`Low`\" pulumi-lang-go=\"`low`\" pulumi-lang-python=\"`low`\" pulumi-lang-yaml=\"`low`\" pulumi-lang-java=\"`low`\"\u003e`low`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e, `no-op`, \u003cspan pulumi-lang-nodejs=\"`increase`\" pulumi-lang-dotnet=\"`Increase`\" pulumi-lang-go=\"`increase`\" pulumi-lang-python=\"`increase`\" pulumi-lang-yaml=\"`increase`\" pulumi-lang-java=\"`increase`\"\u003e`increase`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`decrease`\" pulumi-lang-dotnet=\"`Decrease`\" pulumi-lang-go=\"`decrease`\" pulumi-lang-python=\"`decrease`\" pulumi-lang-yaml=\"`decrease`\" pulumi-lang-java=\"`decrease`\"\u003e`decrease`\u003c/span\u003e.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of tags associated with the critical asset.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/securityMonitoringDefaultRule:SecurityMonitoringDefaultRule": {
            "description": "Provides a Datadog Security Monitoring Rule API resource for default rules. It can only be imported, you can't create a default rule.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst adefaultrule = new datadog.SecurityMonitoringDefaultRule(\"adefaultrule\", {\n    enabled: true,\n    cases: [{\n        status: \"high\",\n        notifications: [\"@me\"],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nadefaultrule = datadog.SecurityMonitoringDefaultRule(\"adefaultrule\",\n    enabled=True,\n    cases=[{\n        \"status\": \"high\",\n        \"notifications\": [\"@me\"],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var adefaultrule = new Datadog.SecurityMonitoringDefaultRule(\"adefaultrule\", new()\n    {\n        Enabled = true,\n        Cases = new[]\n        {\n            new Datadog.Inputs.SecurityMonitoringDefaultRuleCaseArgs\n            {\n                Status = \"high\",\n                Notifications = new[]\n                {\n                    \"@me\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewSecurityMonitoringDefaultRule(ctx, \"adefaultrule\", \u0026datadog.SecurityMonitoringDefaultRuleArgs{\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tCases: datadog.SecurityMonitoringDefaultRuleCaseArray{\n\t\t\t\t\u0026datadog.SecurityMonitoringDefaultRuleCaseArgs{\n\t\t\t\t\tStatus: pulumi.String(\"high\"),\n\t\t\t\t\tNotifications: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"@me\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SecurityMonitoringDefaultRule;\nimport com.pulumi.datadog.SecurityMonitoringDefaultRuleArgs;\nimport com.pulumi.datadog.inputs.SecurityMonitoringDefaultRuleCaseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var adefaultrule = new SecurityMonitoringDefaultRule(\"adefaultrule\", SecurityMonitoringDefaultRuleArgs.builder()\n            .enabled(true)\n            .cases(SecurityMonitoringDefaultRuleCaseArgs.builder()\n                .status(\"high\")\n                .notifications(\"@me\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  adefaultrule:\n    type: datadog:SecurityMonitoringDefaultRule\n    properties:\n      enabled: true # Change the notifications for the high case\n      cases:\n        - status: high\n          notifications:\n            - '@me'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nDefault rules need to be imported using their ID before applying.\nresource \u003cspan pulumi-lang-nodejs=\"\"datadog.SecurityMonitoringDefaultRule\"\" pulumi-lang-dotnet=\"\"datadog.SecurityMonitoringDefaultRule\"\" pulumi-lang-go=\"\"SecurityMonitoringDefaultRule\"\" pulumi-lang-python=\"\"SecurityMonitoringDefaultRule\"\" pulumi-lang-yaml=\"\"datadog.SecurityMonitoringDefaultRule\"\" pulumi-lang-java=\"\"datadog.SecurityMonitoringDefaultRule\"\"\u003e\"datadog.SecurityMonitoringDefaultRule\"\u003c/span\u003e \"adefaultrule\" {\n}\n\n```sh\n$ pulumi import datadog:index/securityMonitoringDefaultRule:SecurityMonitoringDefaultRule adefaultrule m0o-hto-lkb\n```\n\n",
            "properties": {
                "cases": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleCase:SecurityMonitoringDefaultRuleCase"
                    },
                    "description": "Cases of the rule, this is used to update notifications.\n"
                },
                "customMessage": {
                    "type": "string",
                    "description": "Custom Message (will override default message) for generated signals.\n"
                },
                "customName": {
                    "type": "string",
                    "description": "The name (will override default name) of the rule.\n"
                },
                "customTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom tags for generated signals.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enable the rule. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleFilter:SecurityMonitoringDefaultRuleFilter"
                    },
                    "description": "Additional queries to filter matched events before they are processed.\n"
                },
                "options": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleOptions:SecurityMonitoringDefaultRuleOptions",
                    "description": "Options on default rules. Note that only a subset of fields can be updated on default rule options.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleQuery:SecurityMonitoringDefaultRuleQuery"
                    },
                    "description": "Queries for selecting logs which are part of the rule.\n"
                },
                "type": {
                    "type": "string",
                    "description": "The rule type.\n"
                }
            },
            "required": [
                "cases",
                "options",
                "queries",
                "type"
            ],
            "inputProperties": {
                "cases": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleCase:SecurityMonitoringDefaultRuleCase"
                    },
                    "description": "Cases of the rule, this is used to update notifications.\n"
                },
                "customMessage": {
                    "type": "string",
                    "description": "Custom Message (will override default message) for generated signals.\n"
                },
                "customName": {
                    "type": "string",
                    "description": "The name (will override default name) of the rule.\n"
                },
                "customTags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Custom tags for generated signals.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Enable the rule. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleFilter:SecurityMonitoringDefaultRuleFilter"
                    },
                    "description": "Additional queries to filter matched events before they are processed.\n"
                },
                "options": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleOptions:SecurityMonitoringDefaultRuleOptions",
                    "description": "Options on default rules. Note that only a subset of fields can be updated on default rule options.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleQuery:SecurityMonitoringDefaultRuleQuery"
                    },
                    "description": "Queries for selecting logs which are part of the rule.\n"
                }
            },
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SecurityMonitoringDefaultRule resources.\n",
                "properties": {
                    "cases": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleCase:SecurityMonitoringDefaultRuleCase"
                        },
                        "description": "Cases of the rule, this is used to update notifications.\n"
                    },
                    "customMessage": {
                        "type": "string",
                        "description": "Custom Message (will override default message) for generated signals.\n"
                    },
                    "customName": {
                        "type": "string",
                        "description": "The name (will override default name) of the rule.\n"
                    },
                    "customTags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Custom tags for generated signals.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Enable the rule. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "filters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleFilter:SecurityMonitoringDefaultRuleFilter"
                        },
                        "description": "Additional queries to filter matched events before they are processed.\n"
                    },
                    "options": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleOptions:SecurityMonitoringDefaultRuleOptions",
                        "description": "Options on default rules. Note that only a subset of fields can be updated on default rule options.\n"
                    },
                    "queries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringDefaultRuleQuery:SecurityMonitoringDefaultRuleQuery"
                        },
                        "description": "Queries for selecting logs which are part of the rule.\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The rule type.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/securityMonitoringFilter:SecurityMonitoringFilter": {
            "description": "Provides a Datadog Security Monitoring Rule API resource for security filters.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst myFilter = new datadog.SecurityMonitoringFilter(\"my_filter\", {\n    name: \"My filter\",\n    query: \"The filter is filtering.\",\n    isEnabled: true,\n    exclusionFilters: [\n        {\n            name: \"first\",\n            query: \"exclude some logs\",\n        },\n        {\n            name: \"second\",\n            query: \"exclude some other logs\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmy_filter = datadog.SecurityMonitoringFilter(\"my_filter\",\n    name=\"My filter\",\n    query=\"The filter is filtering.\",\n    is_enabled=True,\n    exclusion_filters=[\n        {\n            \"name\": \"first\",\n            \"query\": \"exclude some logs\",\n        },\n        {\n            \"name\": \"second\",\n            \"query\": \"exclude some other logs\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myFilter = new Datadog.SecurityMonitoringFilter(\"my_filter\", new()\n    {\n        Name = \"My filter\",\n        Query = \"The filter is filtering.\",\n        IsEnabled = true,\n        ExclusionFilters = new[]\n        {\n            new Datadog.Inputs.SecurityMonitoringFilterExclusionFilterArgs\n            {\n                Name = \"first\",\n                Query = \"exclude some logs\",\n            },\n            new Datadog.Inputs.SecurityMonitoringFilterExclusionFilterArgs\n            {\n                Name = \"second\",\n                Query = \"exclude some other logs\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewSecurityMonitoringFilter(ctx, \"my_filter\", \u0026datadog.SecurityMonitoringFilterArgs{\n\t\t\tName:      pulumi.String(\"My filter\"),\n\t\t\tQuery:     pulumi.String(\"The filter is filtering.\"),\n\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\tExclusionFilters: datadog.SecurityMonitoringFilterExclusionFilterArray{\n\t\t\t\t\u0026datadog.SecurityMonitoringFilterExclusionFilterArgs{\n\t\t\t\t\tName:  pulumi.String(\"first\"),\n\t\t\t\t\tQuery: pulumi.String(\"exclude some logs\"),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.SecurityMonitoringFilterExclusionFilterArgs{\n\t\t\t\t\tName:  pulumi.String(\"second\"),\n\t\t\t\t\tQuery: pulumi.String(\"exclude some other logs\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SecurityMonitoringFilter;\nimport com.pulumi.datadog.SecurityMonitoringFilterArgs;\nimport com.pulumi.datadog.inputs.SecurityMonitoringFilterExclusionFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myFilter = new SecurityMonitoringFilter(\"myFilter\", SecurityMonitoringFilterArgs.builder()\n            .name(\"My filter\")\n            .query(\"The filter is filtering.\")\n            .isEnabled(true)\n            .exclusionFilters(            \n                SecurityMonitoringFilterExclusionFilterArgs.builder()\n                    .name(\"first\")\n                    .query(\"exclude some logs\")\n                    .build(),\n                SecurityMonitoringFilterExclusionFilterArgs.builder()\n                    .name(\"second\")\n                    .query(\"exclude some other logs\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myFilter:\n    type: datadog:SecurityMonitoringFilter\n    name: my_filter\n    properties:\n      name: My filter\n      query: The filter is filtering.\n      isEnabled: true\n      exclusionFilters:\n        - name: first\n          query: exclude some logs\n        - name: second\n          query: exclude some other logs\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nSecurity monitoring filters can be imported using ID, e.g.\n\n```sh\n$ pulumi import datadog:index/securityMonitoringFilter:SecurityMonitoringFilter my_filter m0o-hto-lkb\n```\n\n",
            "properties": {
                "exclusionFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringFilterExclusionFilter:SecurityMonitoringFilterExclusionFilter"
                    },
                    "description": "Exclusion filters to exclude some logs from the security filter.\n"
                },
                "filteredDataType": {
                    "type": "string",
                    "description": "The filtered data type. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e. Defaults to `\"logs\"`.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Whether the security filter is enabled.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the security filter.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query of the security filter.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "The version of the security filter.\n"
                }
            },
            "required": [
                "isEnabled",
                "name",
                "query",
                "version"
            ],
            "inputProperties": {
                "exclusionFilters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringFilterExclusionFilter:SecurityMonitoringFilterExclusionFilter"
                    },
                    "description": "Exclusion filters to exclude some logs from the security filter.\n"
                },
                "filteredDataType": {
                    "type": "string",
                    "description": "The filtered data type. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e. Defaults to `\"logs\"`.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Whether the security filter is enabled.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the security filter.\n"
                },
                "query": {
                    "type": "string",
                    "description": "The query of the security filter.\n"
                }
            },
            "requiredInputs": [
                "isEnabled",
                "name",
                "query"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SecurityMonitoringFilter resources.\n",
                "properties": {
                    "exclusionFilters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringFilterExclusionFilter:SecurityMonitoringFilterExclusionFilter"
                        },
                        "description": "Exclusion filters to exclude some logs from the security filter.\n"
                    },
                    "filteredDataType": {
                        "type": "string",
                        "description": "The filtered data type. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e. Defaults to `\"logs\"`.\n"
                    },
                    "isEnabled": {
                        "type": "boolean",
                        "description": "Whether the security filter is enabled.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the security filter.\n"
                    },
                    "query": {
                        "type": "string",
                        "description": "The query of the security filter.\n"
                    },
                    "version": {
                        "type": "integer",
                        "description": "The version of the security filter.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/securityMonitoringRule:SecurityMonitoringRule": {
            "description": "Provides a Datadog Security Monitoring Rule API resource. This can be used to create and manage Datadog security monitoring rules. To change settings for a default rule, use \u003cspan pulumi-lang-nodejs=\"`datadog.SecurityMonitoringDefaultRule`\" pulumi-lang-dotnet=\"`datadog.SecurityMonitoringDefaultRule`\" pulumi-lang-go=\"`SecurityMonitoringDefaultRule`\" pulumi-lang-python=\"`SecurityMonitoringDefaultRule`\" pulumi-lang-yaml=\"`datadog.SecurityMonitoringDefaultRule`\" pulumi-lang-java=\"`datadog.SecurityMonitoringDefaultRule`\"\u003e`datadog.SecurityMonitoringDefaultRule`\u003c/span\u003e instead.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst myrule = new datadog.SecurityMonitoringRule(\"myrule\", {\n    name: \"My rule\",\n    message: \"The rule has triggered.\",\n    enabled: true,\n    queries: [\n        {\n            name: \"errors\",\n            query: \"status:error\",\n            aggregation: \"count\",\n            dataSource: \"logs\",\n            groupByFields: [\"host\"],\n        },\n        {\n            name: \"warnings\",\n            query: \"status:warning\",\n            aggregation: \"count\",\n            dataSource: \"logs\",\n            groupByFields: [\"host\"],\n        },\n    ],\n    cases: [{\n        status: \"high\",\n        condition: \"errors \u003e 3 \u0026\u0026 warnings \u003e 10\",\n        notifications: [\"@user\"],\n    }],\n    options: {\n        evaluationWindow: 300,\n        keepAlive: 600,\n        maxSignalDuration: 900,\n    },\n    tags: [\"type:dos\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmyrule = datadog.SecurityMonitoringRule(\"myrule\",\n    name=\"My rule\",\n    message=\"The rule has triggered.\",\n    enabled=True,\n    queries=[\n        {\n            \"name\": \"errors\",\n            \"query\": \"status:error\",\n            \"aggregation\": \"count\",\n            \"data_source\": \"logs\",\n            \"group_by_fields\": [\"host\"],\n        },\n        {\n            \"name\": \"warnings\",\n            \"query\": \"status:warning\",\n            \"aggregation\": \"count\",\n            \"data_source\": \"logs\",\n            \"group_by_fields\": [\"host\"],\n        },\n    ],\n    cases=[{\n        \"status\": \"high\",\n        \"condition\": \"errors \u003e 3 \u0026\u0026 warnings \u003e 10\",\n        \"notifications\": [\"@user\"],\n    }],\n    options={\n        \"evaluation_window\": 300,\n        \"keep_alive\": 600,\n        \"max_signal_duration\": 900,\n    },\n    tags=[\"type:dos\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myrule = new Datadog.SecurityMonitoringRule(\"myrule\", new()\n    {\n        Name = \"My rule\",\n        Message = \"The rule has triggered.\",\n        Enabled = true,\n        Queries = new[]\n        {\n            new Datadog.Inputs.SecurityMonitoringRuleQueryArgs\n            {\n                Name = \"errors\",\n                Query = \"status:error\",\n                Aggregation = \"count\",\n                DataSource = \"logs\",\n                GroupByFields = new[]\n                {\n                    \"host\",\n                },\n            },\n            new Datadog.Inputs.SecurityMonitoringRuleQueryArgs\n            {\n                Name = \"warnings\",\n                Query = \"status:warning\",\n                Aggregation = \"count\",\n                DataSource = \"logs\",\n                GroupByFields = new[]\n                {\n                    \"host\",\n                },\n            },\n        },\n        Cases = new[]\n        {\n            new Datadog.Inputs.SecurityMonitoringRuleCaseArgs\n            {\n                Status = \"high\",\n                Condition = \"errors \u003e 3 \u0026\u0026 warnings \u003e 10\",\n                Notifications = new[]\n                {\n                    \"@user\",\n                },\n            },\n        },\n        Options = new Datadog.Inputs.SecurityMonitoringRuleOptionsArgs\n        {\n            EvaluationWindow = 300,\n            KeepAlive = 600,\n            MaxSignalDuration = 900,\n        },\n        Tags = new[]\n        {\n            \"type:dos\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewSecurityMonitoringRule(ctx, \"myrule\", \u0026datadog.SecurityMonitoringRuleArgs{\n\t\t\tName:    pulumi.String(\"My rule\"),\n\t\t\tMessage: pulumi.String(\"The rule has triggered.\"),\n\t\t\tEnabled: pulumi.Bool(true),\n\t\t\tQueries: datadog.SecurityMonitoringRuleQueryArray{\n\t\t\t\t\u0026datadog.SecurityMonitoringRuleQueryArgs{\n\t\t\t\t\tName:        pulumi.String(\"errors\"),\n\t\t\t\t\tQuery:       pulumi.String(\"status:error\"),\n\t\t\t\t\tAggregation: pulumi.String(\"count\"),\n\t\t\t\t\tDataSource:  pulumi.String(\"logs\"),\n\t\t\t\t\tGroupByFields: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"host\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026datadog.SecurityMonitoringRuleQueryArgs{\n\t\t\t\t\tName:        pulumi.String(\"warnings\"),\n\t\t\t\t\tQuery:       pulumi.String(\"status:warning\"),\n\t\t\t\t\tAggregation: pulumi.String(\"count\"),\n\t\t\t\t\tDataSource:  pulumi.String(\"logs\"),\n\t\t\t\t\tGroupByFields: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"host\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCases: datadog.SecurityMonitoringRuleCaseArray{\n\t\t\t\t\u0026datadog.SecurityMonitoringRuleCaseArgs{\n\t\t\t\t\tStatus:    pulumi.String(\"high\"),\n\t\t\t\t\tCondition: pulumi.String(\"errors \u003e 3 \u0026\u0026 warnings \u003e 10\"),\n\t\t\t\t\tNotifications: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"@user\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tOptions: \u0026datadog.SecurityMonitoringRuleOptionsArgs{\n\t\t\t\tEvaluationWindow:  pulumi.Int(300),\n\t\t\t\tKeepAlive:         pulumi.Int(600),\n\t\t\t\tMaxSignalDuration: pulumi.Int(900),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"type:dos\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SecurityMonitoringRule;\nimport com.pulumi.datadog.SecurityMonitoringRuleArgs;\nimport com.pulumi.datadog.inputs.SecurityMonitoringRuleQueryArgs;\nimport com.pulumi.datadog.inputs.SecurityMonitoringRuleCaseArgs;\nimport com.pulumi.datadog.inputs.SecurityMonitoringRuleOptionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myrule = new SecurityMonitoringRule(\"myrule\", SecurityMonitoringRuleArgs.builder()\n            .name(\"My rule\")\n            .message(\"The rule has triggered.\")\n            .enabled(true)\n            .queries(            \n                SecurityMonitoringRuleQueryArgs.builder()\n                    .name(\"errors\")\n                    .query(\"status:error\")\n                    .aggregation(\"count\")\n                    .dataSource(\"logs\")\n                    .groupByFields(\"host\")\n                    .build(),\n                SecurityMonitoringRuleQueryArgs.builder()\n                    .name(\"warnings\")\n                    .query(\"status:warning\")\n                    .aggregation(\"count\")\n                    .dataSource(\"logs\")\n                    .groupByFields(\"host\")\n                    .build())\n            .cases(SecurityMonitoringRuleCaseArgs.builder()\n                .status(\"high\")\n                .condition(\"errors \u003e 3 \u0026\u0026 warnings \u003e 10\")\n                .notifications(\"@user\")\n                .build())\n            .options(SecurityMonitoringRuleOptionsArgs.builder()\n                .evaluationWindow(300)\n                .keepAlive(600)\n                .maxSignalDuration(900)\n                .build())\n            .tags(\"type:dos\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myrule:\n    type: datadog:SecurityMonitoringRule\n    properties:\n      name: My rule\n      message: The rule has triggered.\n      enabled: true\n      queries:\n        - name: errors\n          query: status:error\n          aggregation: count\n          dataSource: logs\n          groupByFields:\n            - host\n        - name: warnings\n          query: status:warning\n          aggregation: count\n          dataSource: logs\n          groupByFields:\n            - host\n      cases:\n        - status: high\n          condition: errors \u003e 3 \u0026\u0026 warnings \u003e 10\n          notifications:\n            - '@user'\n      options:\n        evaluationWindow: 300\n        keepAlive: 600\n        maxSignalDuration: 900\n      tags:\n        - type:dos\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nSecurity monitoring rules can be imported using ID, e.g.\n\n```sh\n$ pulumi import datadog:index/securityMonitoringRule:SecurityMonitoringRule my_rule m0o-hto-lkb\n```\n\n",
            "properties": {
                "calculatedFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleCalculatedField:SecurityMonitoringRuleCalculatedField"
                    },
                    "description": "One or more calculated fields. Available only for scheduled rules (in other words, when \u003cspan pulumi-lang-nodejs=\"`schedulingOptions`\" pulumi-lang-dotnet=\"`SchedulingOptions`\" pulumi-lang-go=\"`schedulingOptions`\" pulumi-lang-python=\"`scheduling_options`\" pulumi-lang-yaml=\"`schedulingOptions`\" pulumi-lang-java=\"`schedulingOptions`\"\u003e`schedulingOptions`\u003c/span\u003e is defined).\n"
                },
                "cases": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleCase:SecurityMonitoringRuleCase"
                    },
                    "description": "Cases for generating signals.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleFilter:SecurityMonitoringRuleFilter"
                    },
                    "description": "Additional queries to filter matched events before they are processed. **Note**: This field is deprecated for log detection, signal correlation, and workload security rules.\n"
                },
                "groupSignalsBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Additional grouping to perform on top of the query grouping.\n"
                },
                "hasExtendedTitle": {
                    "type": "boolean",
                    "description": "Whether the notifications include the triggering group-by values in their title. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "message": {
                    "type": "string",
                    "description": "Message for generated signals.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule.\n"
                },
                "options": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptions:SecurityMonitoringRuleOptions",
                    "description": "Options on rules.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleQuery:SecurityMonitoringRuleQuery"
                    },
                    "description": "Queries for selecting logs which are part of the rule.\n"
                },
                "referenceTables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleReferenceTable:SecurityMonitoringRuleReferenceTable"
                    },
                    "description": "Reference tables for filtering query results.\n"
                },
                "schedulingOptions": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleSchedulingOptions:SecurityMonitoringRuleSchedulingOptions",
                    "description": "Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs in real time on ingested logs.\n"
                },
                "signalQueries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleSignalQuery:SecurityMonitoringRuleSignalQuery"
                    },
                    "description": "Queries for selecting logs which are part of the rule.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags for generated signals. Note: if default tags are present at provider level, they will be added to this resource.\n"
                },
                "thirdPartyCases": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleThirdPartyCase:SecurityMonitoringRuleThirdPartyCase"
                    },
                    "description": "Cases for generating signals for third-party rules. Only required and accepted for third-party rules\n"
                },
                "type": {
                    "type": "string",
                    "description": "The rule type. Valid values are \u003cspan pulumi-lang-nodejs=\"`applicationSecurity`\" pulumi-lang-dotnet=\"`ApplicationSecurity`\" pulumi-lang-go=\"`applicationSecurity`\" pulumi-lang-python=\"`application_security`\" pulumi-lang-yaml=\"`applicationSecurity`\" pulumi-lang-java=\"`applicationSecurity`\"\u003e`applicationSecurity`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logDetection`\" pulumi-lang-dotnet=\"`LogDetection`\" pulumi-lang-go=\"`logDetection`\" pulumi-lang-python=\"`log_detection`\" pulumi-lang-yaml=\"`logDetection`\" pulumi-lang-java=\"`logDetection`\"\u003e`logDetection`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`workloadSecurity`\" pulumi-lang-dotnet=\"`WorkloadSecurity`\" pulumi-lang-go=\"`workloadSecurity`\" pulumi-lang-python=\"`workload_security`\" pulumi-lang-yaml=\"`workloadSecurity`\" pulumi-lang-java=\"`workloadSecurity`\"\u003e`workloadSecurity`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`signalCorrelation`\" pulumi-lang-dotnet=\"`SignalCorrelation`\" pulumi-lang-go=\"`signalCorrelation`\" pulumi-lang-python=\"`signal_correlation`\" pulumi-lang-yaml=\"`signalCorrelation`\" pulumi-lang-java=\"`signalCorrelation`\"\u003e`signalCorrelation`\u003c/span\u003e. Defaults to `\u003cspan pulumi-lang-nodejs=\"\"logDetection\"\" pulumi-lang-dotnet=\"\"LogDetection\"\" pulumi-lang-go=\"\"logDetection\"\" pulumi-lang-python=\"\"log_detection\"\" pulumi-lang-yaml=\"\"logDetection\"\" pulumi-lang-java=\"\"logDetection\"\"\u003e\"logDetection\"\u003c/span\u003e`.\n"
                },
                "validate": {
                    "type": "boolean",
                    "description": "Whether or not to validate the Rule.\n"
                }
            },
            "required": [
                "message",
                "name",
                "tags"
            ],
            "inputProperties": {
                "calculatedFields": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleCalculatedField:SecurityMonitoringRuleCalculatedField"
                    },
                    "description": "One or more calculated fields. Available only for scheduled rules (in other words, when \u003cspan pulumi-lang-nodejs=\"`schedulingOptions`\" pulumi-lang-dotnet=\"`SchedulingOptions`\" pulumi-lang-go=\"`schedulingOptions`\" pulumi-lang-python=\"`scheduling_options`\" pulumi-lang-yaml=\"`schedulingOptions`\" pulumi-lang-java=\"`schedulingOptions`\"\u003e`schedulingOptions`\u003c/span\u003e is defined).\n"
                },
                "cases": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleCase:SecurityMonitoringRuleCase"
                    },
                    "description": "Cases for generating signals.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "filters": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleFilter:SecurityMonitoringRuleFilter"
                    },
                    "description": "Additional queries to filter matched events before they are processed. **Note**: This field is deprecated for log detection, signal correlation, and workload security rules.\n"
                },
                "groupSignalsBies": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Additional grouping to perform on top of the query grouping.\n"
                },
                "hasExtendedTitle": {
                    "type": "boolean",
                    "description": "Whether the notifications include the triggering group-by values in their title. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "message": {
                    "type": "string",
                    "description": "Message for generated signals.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule.\n"
                },
                "options": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptions:SecurityMonitoringRuleOptions",
                    "description": "Options on rules.\n"
                },
                "queries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleQuery:SecurityMonitoringRuleQuery"
                    },
                    "description": "Queries for selecting logs which are part of the rule.\n"
                },
                "referenceTables": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleReferenceTable:SecurityMonitoringRuleReferenceTable"
                    },
                    "description": "Reference tables for filtering query results.\n"
                },
                "schedulingOptions": {
                    "$ref": "#/types/datadog:index/SecurityMonitoringRuleSchedulingOptions:SecurityMonitoringRuleSchedulingOptions",
                    "description": "Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs in real time on ingested logs.\n"
                },
                "signalQueries": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleSignalQuery:SecurityMonitoringRuleSignalQuery"
                    },
                    "description": "Queries for selecting logs which are part of the rule.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Tags for generated signals. Note: if default tags are present at provider level, they will be added to this resource.\n"
                },
                "thirdPartyCases": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleThirdPartyCase:SecurityMonitoringRuleThirdPartyCase"
                    },
                    "description": "Cases for generating signals for third-party rules. Only required and accepted for third-party rules\n"
                },
                "type": {
                    "type": "string",
                    "description": "The rule type. Valid values are \u003cspan pulumi-lang-nodejs=\"`applicationSecurity`\" pulumi-lang-dotnet=\"`ApplicationSecurity`\" pulumi-lang-go=\"`applicationSecurity`\" pulumi-lang-python=\"`application_security`\" pulumi-lang-yaml=\"`applicationSecurity`\" pulumi-lang-java=\"`applicationSecurity`\"\u003e`applicationSecurity`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logDetection`\" pulumi-lang-dotnet=\"`LogDetection`\" pulumi-lang-go=\"`logDetection`\" pulumi-lang-python=\"`log_detection`\" pulumi-lang-yaml=\"`logDetection`\" pulumi-lang-java=\"`logDetection`\"\u003e`logDetection`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`workloadSecurity`\" pulumi-lang-dotnet=\"`WorkloadSecurity`\" pulumi-lang-go=\"`workloadSecurity`\" pulumi-lang-python=\"`workload_security`\" pulumi-lang-yaml=\"`workloadSecurity`\" pulumi-lang-java=\"`workloadSecurity`\"\u003e`workloadSecurity`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`signalCorrelation`\" pulumi-lang-dotnet=\"`SignalCorrelation`\" pulumi-lang-go=\"`signalCorrelation`\" pulumi-lang-python=\"`signal_correlation`\" pulumi-lang-yaml=\"`signalCorrelation`\" pulumi-lang-java=\"`signalCorrelation`\"\u003e`signalCorrelation`\u003c/span\u003e. Defaults to `\u003cspan pulumi-lang-nodejs=\"\"logDetection\"\" pulumi-lang-dotnet=\"\"LogDetection\"\" pulumi-lang-go=\"\"logDetection\"\" pulumi-lang-python=\"\"log_detection\"\" pulumi-lang-yaml=\"\"logDetection\"\" pulumi-lang-java=\"\"logDetection\"\"\u003e\"logDetection\"\u003c/span\u003e`.\n"
                },
                "validate": {
                    "type": "boolean",
                    "description": "Whether or not to validate the Rule.\n"
                }
            },
            "requiredInputs": [
                "message",
                "name"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SecurityMonitoringRule resources.\n",
                "properties": {
                    "calculatedFields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringRuleCalculatedField:SecurityMonitoringRuleCalculatedField"
                        },
                        "description": "One or more calculated fields. Available only for scheduled rules (in other words, when \u003cspan pulumi-lang-nodejs=\"`schedulingOptions`\" pulumi-lang-dotnet=\"`SchedulingOptions`\" pulumi-lang-go=\"`schedulingOptions`\" pulumi-lang-python=\"`scheduling_options`\" pulumi-lang-yaml=\"`schedulingOptions`\" pulumi-lang-java=\"`schedulingOptions`\"\u003e`schedulingOptions`\u003c/span\u003e is defined).\n"
                    },
                    "cases": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringRuleCase:SecurityMonitoringRuleCase"
                        },
                        "description": "Cases for generating signals.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "filters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringRuleFilter:SecurityMonitoringRuleFilter"
                        },
                        "description": "Additional queries to filter matched events before they are processed. **Note**: This field is deprecated for log detection, signal correlation, and workload security rules.\n"
                    },
                    "groupSignalsBies": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Additional grouping to perform on top of the query grouping.\n"
                    },
                    "hasExtendedTitle": {
                        "type": "boolean",
                        "description": "Whether the notifications include the triggering group-by values in their title. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "message": {
                        "type": "string",
                        "description": "Message for generated signals.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the rule.\n"
                    },
                    "options": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleOptions:SecurityMonitoringRuleOptions",
                        "description": "Options on rules.\n"
                    },
                    "queries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringRuleQuery:SecurityMonitoringRuleQuery"
                        },
                        "description": "Queries for selecting logs which are part of the rule.\n"
                    },
                    "referenceTables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringRuleReferenceTable:SecurityMonitoringRuleReferenceTable"
                        },
                        "description": "Reference tables for filtering query results.\n"
                    },
                    "schedulingOptions": {
                        "$ref": "#/types/datadog:index/SecurityMonitoringRuleSchedulingOptions:SecurityMonitoringRuleSchedulingOptions",
                        "description": "Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs in real time on ingested logs.\n"
                    },
                    "signalQueries": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringRuleSignalQuery:SecurityMonitoringRuleSignalQuery"
                        },
                        "description": "Queries for selecting logs which are part of the rule.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Tags for generated signals. Note: if default tags are present at provider level, they will be added to this resource.\n"
                    },
                    "thirdPartyCases": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SecurityMonitoringRuleThirdPartyCase:SecurityMonitoringRuleThirdPartyCase"
                        },
                        "description": "Cases for generating signals for third-party rules. Only required and accepted for third-party rules\n"
                    },
                    "type": {
                        "type": "string",
                        "description": "The rule type. Valid values are \u003cspan pulumi-lang-nodejs=\"`applicationSecurity`\" pulumi-lang-dotnet=\"`ApplicationSecurity`\" pulumi-lang-go=\"`applicationSecurity`\" pulumi-lang-python=\"`application_security`\" pulumi-lang-yaml=\"`applicationSecurity`\" pulumi-lang-java=\"`applicationSecurity`\"\u003e`applicationSecurity`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`logDetection`\" pulumi-lang-dotnet=\"`LogDetection`\" pulumi-lang-go=\"`logDetection`\" pulumi-lang-python=\"`log_detection`\" pulumi-lang-yaml=\"`logDetection`\" pulumi-lang-java=\"`logDetection`\"\u003e`logDetection`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`workloadSecurity`\" pulumi-lang-dotnet=\"`WorkloadSecurity`\" pulumi-lang-go=\"`workloadSecurity`\" pulumi-lang-python=\"`workload_security`\" pulumi-lang-yaml=\"`workloadSecurity`\" pulumi-lang-java=\"`workloadSecurity`\"\u003e`workloadSecurity`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`signalCorrelation`\" pulumi-lang-dotnet=\"`SignalCorrelation`\" pulumi-lang-go=\"`signalCorrelation`\" pulumi-lang-python=\"`signal_correlation`\" pulumi-lang-yaml=\"`signalCorrelation`\" pulumi-lang-java=\"`signalCorrelation`\"\u003e`signalCorrelation`\u003c/span\u003e. Defaults to `\u003cspan pulumi-lang-nodejs=\"\"logDetection\"\" pulumi-lang-dotnet=\"\"LogDetection\"\" pulumi-lang-go=\"\"logDetection\"\" pulumi-lang-python=\"\"log_detection\"\" pulumi-lang-yaml=\"\"logDetection\"\" pulumi-lang-java=\"\"logDetection\"\"\u003e\"logDetection\"\u003c/span\u003e`.\n"
                    },
                    "validate": {
                        "type": "boolean",
                        "description": "Whether or not to validate the Rule.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/securityMonitoringRuleJson:SecurityMonitoringRuleJson": {
            "description": "Provides a Datadog Security Monitoring Rule JSON resource. This can be used to create and manage Datadog security monitoring rules using raw JSON.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Example Security Monitoring Rule JSON\nconst securityRuleJson = new datadog.SecurityMonitoringRuleJson(\"security_rule_json\", {rule: `{\n  \"name\": \"High error rate security monitoring\",\n  \"isEnabled\": true,\n  \"type\": \"log_detection\",\n  \"message\": \"High error rate detected in logs\",\n  \"tags\": [\"env:prod\", \"security\"],\n  \"cases\": [\n    {\n      \"name\": \"high case\",\n      \"status\": \"high\",\n      \"condition\": \"errors \u003e 100 \u0026\u0026 warnings \u003e 1000\",\n      \"notifications\": [\"@security-team\"]\n    }\n  ],\n  \"queries\": [\n    {\n      \"name\": \"errors\",\n      \"query\": \"status:error\",\n      \"aggregation\": \"count\",\n      \"dataSource\": \"logs\",\n      \"groupByFields\": [\"service\", \"env\"]\n    },\n    {\n      \"name\": \"warnings\",\n      \"query\": \"status:warning\",\n      \"aggregation\": \"count\",\n      \"dataSource\": \"logs\",\n      \"groupByFields\": [\"service\", \"env\"]\n    }\n  ],\n  \"options\": {\n    \"evaluationWindow\": 300,\n    \"keepAlive\": 600,\n    \"maxSignalDuration\": 900,\n    \"detectionMethod\": \"threshold\"\n  }\n}\n`});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Example Security Monitoring Rule JSON\nsecurity_rule_json = datadog.SecurityMonitoringRuleJson(\"security_rule_json\", rule=\"\"\"{\n  \"name\": \"High error rate security monitoring\",\n  \"isEnabled\": true,\n  \"type\": \"log_detection\",\n  \"message\": \"High error rate detected in logs\",\n  \"tags\": [\"env:prod\", \"security\"],\n  \"cases\": [\n    {\n      \"name\": \"high case\",\n      \"status\": \"high\",\n      \"condition\": \"errors \u003e 100 \u0026\u0026 warnings \u003e 1000\",\n      \"notifications\": [\"@security-team\"]\n    }\n  ],\n  \"queries\": [\n    {\n      \"name\": \"errors\",\n      \"query\": \"status:error\",\n      \"aggregation\": \"count\",\n      \"dataSource\": \"logs\",\n      \"groupByFields\": [\"service\", \"env\"]\n    },\n    {\n      \"name\": \"warnings\",\n      \"query\": \"status:warning\",\n      \"aggregation\": \"count\",\n      \"dataSource\": \"logs\",\n      \"groupByFields\": [\"service\", \"env\"]\n    }\n  ],\n  \"options\": {\n    \"evaluationWindow\": 300,\n    \"keepAlive\": 600,\n    \"maxSignalDuration\": 900,\n    \"detectionMethod\": \"threshold\"\n  }\n}\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Example Security Monitoring Rule JSON\n    var securityRuleJson = new Datadog.SecurityMonitoringRuleJson(\"security_rule_json\", new()\n    {\n        Rule = @\"{\n  \"\"name\"\": \"\"High error rate security monitoring\"\",\n  \"\"isEnabled\"\": true,\n  \"\"type\"\": \"\"log_detection\"\",\n  \"\"message\"\": \"\"High error rate detected in logs\"\",\n  \"\"tags\"\": [\"\"env:prod\"\", \"\"security\"\"],\n  \"\"cases\"\": [\n    {\n      \"\"name\"\": \"\"high case\"\",\n      \"\"status\"\": \"\"high\"\",\n      \"\"condition\"\": \"\"errors \u003e 100 \u0026\u0026 warnings \u003e 1000\"\",\n      \"\"notifications\"\": [\"\"@security-team\"\"]\n    }\n  ],\n  \"\"queries\"\": [\n    {\n      \"\"name\"\": \"\"errors\"\",\n      \"\"query\"\": \"\"status:error\"\",\n      \"\"aggregation\"\": \"\"count\"\",\n      \"\"dataSource\"\": \"\"logs\"\",\n      \"\"groupByFields\"\": [\"\"service\"\", \"\"env\"\"]\n    },\n    {\n      \"\"name\"\": \"\"warnings\"\",\n      \"\"query\"\": \"\"status:warning\"\",\n      \"\"aggregation\"\": \"\"count\"\",\n      \"\"dataSource\"\": \"\"logs\"\",\n      \"\"groupByFields\"\": [\"\"service\"\", \"\"env\"\"]\n    }\n  ],\n  \"\"options\"\": {\n    \"\"evaluationWindow\"\": 300,\n    \"\"keepAlive\"\": 600,\n    \"\"maxSignalDuration\"\": 900,\n    \"\"detectionMethod\"\": \"\"threshold\"\"\n  }\n}\n\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Example Security Monitoring Rule JSON\n\t\t_, err := datadog.NewSecurityMonitoringRuleJson(ctx, \"security_rule_json\", \u0026datadog.SecurityMonitoringRuleJsonArgs{\n\t\t\tRule: `{\n  \"name\": \"High error rate security monitoring\",\n  \"isEnabled\": true,\n  \"type\": \"log_detection\",\n  \"message\": \"High error rate detected in logs\",\n  \"tags\": [\"env:prod\", \"security\"],\n  \"cases\": [\n    {\n      \"name\": \"high case\",\n      \"status\": \"high\",\n      \"condition\": \"errors \u003e 100 \u0026\u0026 warnings \u003e 1000\",\n      \"notifications\": [\"@security-team\"]\n    }\n  ],\n  \"queries\": [\n    {\n      \"name\": \"errors\",\n      \"query\": \"status:error\",\n      \"aggregation\": \"count\",\n      \"dataSource\": \"logs\",\n      \"groupByFields\": [\"service\", \"env\"]\n    },\n    {\n      \"name\": \"warnings\",\n      \"query\": \"status:warning\",\n      \"aggregation\": \"count\",\n      \"dataSource\": \"logs\",\n      \"groupByFields\": [\"service\", \"env\"]\n    }\n  ],\n  \"options\": {\n    \"evaluationWindow\": 300,\n    \"keepAlive\": 600,\n    \"maxSignalDuration\": 900,\n    \"detectionMethod\": \"threshold\"\n  }\n}\n`,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SecurityMonitoringRuleJson;\nimport com.pulumi.datadog.SecurityMonitoringRuleJsonArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Example Security Monitoring Rule JSON\n        var securityRuleJson = new SecurityMonitoringRuleJson(\"securityRuleJson\", SecurityMonitoringRuleJsonArgs.builder()\n            .rule(\"\"\"\n{\n  \"name\": \"High error rate security monitoring\",\n  \"isEnabled\": true,\n  \"type\": \"log_detection\",\n  \"message\": \"High error rate detected in logs\",\n  \"tags\": [\"env:prod\", \"security\"],\n  \"cases\": [\n    {\n      \"name\": \"high case\",\n      \"status\": \"high\",\n      \"condition\": \"errors \u003e 100 \u0026\u0026 warnings \u003e 1000\",\n      \"notifications\": [\"@security-team\"]\n    }\n  ],\n  \"queries\": [\n    {\n      \"name\": \"errors\",\n      \"query\": \"status:error\",\n      \"aggregation\": \"count\",\n      \"dataSource\": \"logs\",\n      \"groupByFields\": [\"service\", \"env\"]\n    },\n    {\n      \"name\": \"warnings\",\n      \"query\": \"status:warning\",\n      \"aggregation\": \"count\",\n      \"dataSource\": \"logs\",\n      \"groupByFields\": [\"service\", \"env\"]\n    }\n  ],\n  \"options\": {\n    \"evaluationWindow\": 300,\n    \"keepAlive\": 600,\n    \"maxSignalDuration\": 900,\n    \"detectionMethod\": \"threshold\"\n  }\n}\n            \"\"\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Example Security Monitoring Rule JSON\n  securityRuleJson:\n    type: datadog:SecurityMonitoringRuleJson\n    name: security_rule_json\n    properties:\n      rule: |\n        {\n          \"name\": \"High error rate security monitoring\",\n          \"isEnabled\": true,\n          \"type\": \"log_detection\",\n          \"message\": \"High error rate detected in logs\",\n          \"tags\": [\"env:prod\", \"security\"],\n          \"cases\": [\n            {\n              \"name\": \"high case\",\n              \"status\": \"high\",\n              \"condition\": \"errors \u003e 100 \u0026\u0026 warnings \u003e 1000\",\n              \"notifications\": [\"@security-team\"]\n            }\n          ],\n          \"queries\": [\n            {\n              \"name\": \"errors\",\n              \"query\": \"status:error\",\n              \"aggregation\": \"count\",\n              \"dataSource\": \"logs\",\n              \"groupByFields\": [\"service\", \"env\"]\n            },\n            {\n              \"name\": \"warnings\",\n              \"query\": \"status:warning\",\n              \"aggregation\": \"count\",\n              \"dataSource\": \"logs\",\n              \"groupByFields\": [\"service\", \"env\"]\n            }\n          ],\n          \"options\": {\n            \"evaluationWindow\": 300,\n            \"keepAlive\": 600,\n            \"maxSignalDuration\": 900,\n            \"detectionMethod\": \"threshold\"\n          }\n        }\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/securityMonitoringRuleJson:SecurityMonitoringRuleJson security_rule_json aaa-yyy-vvv\n```\n\n",
            "properties": {
                "json": {
                    "type": "string",
                    "description": "The JSON definition of the Security Monitoring Rule.\n"
                }
            },
            "required": [
                "json"
            ],
            "inputProperties": {
                "json": {
                    "type": "string",
                    "description": "The JSON definition of the Security Monitoring Rule.\n"
                }
            },
            "requiredInputs": [
                "json"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SecurityMonitoringRuleJson resources.\n",
                "properties": {
                    "json": {
                        "type": "string",
                        "description": "The JSON definition of the Security Monitoring Rule.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/securityMonitoringSuppression:SecurityMonitoringSuppression": {
            "description": "Provides a Datadog Security Monitoring Suppression API resource. It can be used to create and manage Datadog security monitoring suppression rules.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst mySuppression = new datadog.SecurityMonitoringSuppression(\"my_suppression\", {\n    name: \"My suppression\",\n    description: \"Suppression for low severity CloudTrail signals from John Doe, excluding test environments from analysis, limited to 2024\",\n    enabled: true,\n    ruleQuery: \"severity:low source:cloudtrail\",\n    suppressionQuery: \"@usr.id:john.doe\",\n    dataExclusionQuery: \"env:test\",\n    startDate: \"2024-12-01T16:00:00Z\",\n    expirationDate: \"2024-12-31T12:00:00Z\",\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nmy_suppression = datadog.SecurityMonitoringSuppression(\"my_suppression\",\n    name=\"My suppression\",\n    description=\"Suppression for low severity CloudTrail signals from John Doe, excluding test environments from analysis, limited to 2024\",\n    enabled=True,\n    rule_query=\"severity:low source:cloudtrail\",\n    suppression_query=\"@usr.id:john.doe\",\n    data_exclusion_query=\"env:test\",\n    start_date=\"2024-12-01T16:00:00Z\",\n    expiration_date=\"2024-12-31T12:00:00Z\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var mySuppression = new Datadog.SecurityMonitoringSuppression(\"my_suppression\", new()\n    {\n        Name = \"My suppression\",\n        Description = \"Suppression for low severity CloudTrail signals from John Doe, excluding test environments from analysis, limited to 2024\",\n        Enabled = true,\n        RuleQuery = \"severity:low source:cloudtrail\",\n        SuppressionQuery = \"@usr.id:john.doe\",\n        DataExclusionQuery = \"env:test\",\n        StartDate = \"2024-12-01T16:00:00Z\",\n        ExpirationDate = \"2024-12-31T12:00:00Z\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewSecurityMonitoringSuppression(ctx, \"my_suppression\", \u0026datadog.SecurityMonitoringSuppressionArgs{\n\t\t\tName:               pulumi.String(\"My suppression\"),\n\t\t\tDescription:        pulumi.String(\"Suppression for low severity CloudTrail signals from John Doe, excluding test environments from analysis, limited to 2024\"),\n\t\t\tEnabled:            pulumi.Bool(true),\n\t\t\tRuleQuery:          pulumi.String(\"severity:low source:cloudtrail\"),\n\t\t\tSuppressionQuery:   pulumi.String(\"@usr.id:john.doe\"),\n\t\t\tDataExclusionQuery: pulumi.String(\"env:test\"),\n\t\t\tStartDate:          pulumi.String(\"2024-12-01T16:00:00Z\"),\n\t\t\tExpirationDate:     pulumi.String(\"2024-12-31T12:00:00Z\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SecurityMonitoringSuppression;\nimport com.pulumi.datadog.SecurityMonitoringSuppressionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var mySuppression = new SecurityMonitoringSuppression(\"mySuppression\", SecurityMonitoringSuppressionArgs.builder()\n            .name(\"My suppression\")\n            .description(\"Suppression for low severity CloudTrail signals from John Doe, excluding test environments from analysis, limited to 2024\")\n            .enabled(true)\n            .ruleQuery(\"severity:low source:cloudtrail\")\n            .suppressionQuery(\"@usr.id:john.doe\")\n            .dataExclusionQuery(\"env:test\")\n            .startDate(\"2024-12-01T16:00:00Z\")\n            .expirationDate(\"2024-12-31T12:00:00Z\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  mySuppression:\n    type: datadog:SecurityMonitoringSuppression\n    name: my_suppression\n    properties:\n      name: My suppression\n      description: Suppression for low severity CloudTrail signals from John Doe, excluding test environments from analysis, limited to 2024\n      enabled: true\n      ruleQuery: severity:low source:cloudtrail\n      suppressionQuery: '@usr.id:john.doe'\n      dataExclusionQuery: env:test\n      startDate: 2024-12-01T16:00:00Z\n      expirationDate: 2024-12-31T12:00:00Z\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\nSecurity monitoring suppressions can be imported using ID, for example:\n\n```sh\n$ pulumi import datadog:index/securityMonitoringSuppression:SecurityMonitoringSuppression my_suppression m0o-hto-lkb\n```\n\n",
            "properties": {
                "dataExclusionQuery": {
                    "type": "string",
                    "description": "An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description for the suppression rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the suppression rule is enabled.\n"
                },
                "expirationDate": {
                    "type": "string",
                    "description": "A RFC3339 timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the suppression rule.\n"
                },
                "ruleQuery": {
                    "type": "string",
                    "description": "The rule query of the suppression rule, with the same syntax as the search bar for detection rules.\n"
                },
                "startDate": {
                    "type": "string",
                    "description": "A RFC3339 timestamp giving a start date for the suppression rule. Before this date, it doesn't suppress signals.\n"
                },
                "suppressionQuery": {
                    "type": "string",
                    "description": "The suppression query of the suppression rule. If a signal matches this query, it is suppressed and is not triggered. It uses the same syntax as the queries to search signals in the Signals Explorer.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags associated with the suppression rule.\n"
                },
                "validate": {
                    "type": "boolean",
                    "description": "Whether to validate the suppression rule during `pulumi preview`. When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the rule is validated against Datadog's suppression validation endpoint. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                }
            },
            "required": [
                "enabled",
                "name",
                "ruleQuery",
                "validate"
            ],
            "inputProperties": {
                "dataExclusionQuery": {
                    "type": "string",
                    "description": "An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule.\n"
                },
                "description": {
                    "type": "string",
                    "description": "A description for the suppression rule.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Whether the suppression rule is enabled.\n"
                },
                "expirationDate": {
                    "type": "string",
                    "description": "A RFC3339 timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the suppression rule.\n"
                },
                "ruleQuery": {
                    "type": "string",
                    "description": "The rule query of the suppression rule, with the same syntax as the search bar for detection rules.\n"
                },
                "startDate": {
                    "type": "string",
                    "description": "A RFC3339 timestamp giving a start date for the suppression rule. Before this date, it doesn't suppress signals.\n"
                },
                "suppressionQuery": {
                    "type": "string",
                    "description": "The suppression query of the suppression rule. If a signal matches this query, it is suppressed and is not triggered. It uses the same syntax as the queries to search signals in the Signals Explorer.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of tags associated with the suppression rule.\n"
                },
                "validate": {
                    "type": "boolean",
                    "description": "Whether to validate the suppression rule during `pulumi preview`. When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the rule is validated against Datadog's suppression validation endpoint. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "enabled",
                "name",
                "ruleQuery"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SecurityMonitoringSuppression resources.\n",
                "properties": {
                    "dataExclusionQuery": {
                        "type": "string",
                        "description": "An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule.\n"
                    },
                    "description": {
                        "type": "string",
                        "description": "A description for the suppression rule.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Whether the suppression rule is enabled.\n"
                    },
                    "expirationDate": {
                        "type": "string",
                        "description": "A RFC3339 timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the suppression rule.\n"
                    },
                    "ruleQuery": {
                        "type": "string",
                        "description": "The rule query of the suppression rule, with the same syntax as the search bar for detection rules.\n"
                    },
                    "startDate": {
                        "type": "string",
                        "description": "A RFC3339 timestamp giving a start date for the suppression rule. Before this date, it doesn't suppress signals.\n"
                    },
                    "suppressionQuery": {
                        "type": "string",
                        "description": "The suppression query of the suppression rule. If a signal matches this query, it is suppressed and is not triggered. It uses the same syntax as the queries to search signals in the Signals Explorer.\n"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of tags associated with the suppression rule.\n"
                    },
                    "validate": {
                        "type": "boolean",
                        "description": "Whether to validate the suppression rule during `pulumi preview`. When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the rule is validated against Datadog's suppression validation endpoint. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/securityNotificationRule:SecurityNotificationRule": {
            "description": "Provides a Datadog Security Monitoring Notification Rule API resource for creating and managing Datadog security notification rules.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\nconst signalRule = new datadog.SecurityNotificationRule(\"signal_rule\", {\n    name: \"My signal notification rule\",\n    selectors: [{\n        triggerSource: \"security_signals\",\n        ruleTypes: [\"workload_security\"],\n        query: \"env:prod\",\n    }],\n    enabled: false,\n    targets: [\n        \"@bob@email.com\",\n        \"@alice@email.com\",\n    ],\n});\nconst vulnerabilityRule = new datadog.SecurityNotificationRule(\"vulnerability_rule\", {\n    name: \"My vulnerability notification rule\",\n    selectors: [{\n        triggerSource: \"security_findings\",\n        ruleTypes: [\n            \"application_library_vulnerability\",\n            \"identity_risk\",\n        ],\n        severities: [\n            \"critical\",\n            \"high\",\n        ],\n    }],\n    timeAggregation: 36000,\n    targets: [\"@john@email.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\nsignal_rule = datadog.SecurityNotificationRule(\"signal_rule\",\n    name=\"My signal notification rule\",\n    selectors=[{\n        \"triggerSource\": \"security_signals\",\n        \"ruleTypes\": [\"workload_security\"],\n        \"query\": \"env:prod\",\n    }],\n    enabled=False,\n    targets=[\n        \"@bob@email.com\",\n        \"@alice@email.com\",\n    ])\nvulnerability_rule = datadog.SecurityNotificationRule(\"vulnerability_rule\",\n    name=\"My vulnerability notification rule\",\n    selectors=[{\n        \"triggerSource\": \"security_findings\",\n        \"ruleTypes\": [\n            \"application_library_vulnerability\",\n            \"identity_risk\",\n        ],\n        \"severities\": [\n            \"critical\",\n            \"high\",\n        ],\n    }],\n    time_aggregation=36000,\n    targets=[\"@john@email.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var signalRule = new Datadog.SecurityNotificationRule(\"signal_rule\", new()\n    {\n        Name = \"My signal notification rule\",\n        Selectors = new[]\n        {\n            \n            {\n                { \"triggerSource\", \"security_signals\" },\n                { \"ruleTypes\", new[]\n                {\n                    \"workload_security\",\n                } },\n                { \"query\", \"env:prod\" },\n            },\n        },\n        Enabled = false,\n        Targets = new[]\n        {\n            \"@bob@email.com\",\n            \"@alice@email.com\",\n        },\n    });\n\n    var vulnerabilityRule = new Datadog.SecurityNotificationRule(\"vulnerability_rule\", new()\n    {\n        Name = \"My vulnerability notification rule\",\n        Selectors = new[]\n        {\n            \n            {\n                { \"triggerSource\", \"security_findings\" },\n                { \"ruleTypes\", new[]\n                {\n                    \"application_library_vulnerability\",\n                    \"identity_risk\",\n                } },\n                { \"severities\", new[]\n                {\n                    \"critical\",\n                    \"high\",\n                } },\n            },\n        },\n        TimeAggregation = 36000,\n        Targets = new[]\n        {\n            \"@john@email.com\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := datadog.NewSecurityNotificationRule(ctx, \"signal_rule\", \u0026datadog.SecurityNotificationRuleArgs{\n\t\t\tName: pulumi.String(\"My signal notification rule\"),\n\t\t\tSelectors: datadog.SecurityNotificationRuleSelectorsArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"triggerSource\": \"security_signals\",\n\t\t\t\t\t\"ruleTypes\": []string{\n\t\t\t\t\t\t\"workload_security\",\n\t\t\t\t\t},\n\t\t\t\t\t\"query\": \"env:prod\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnabled: pulumi.Bool(false),\n\t\t\tTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"@bob@email.com\"),\n\t\t\t\tpulumi.String(\"@alice@email.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = datadog.NewSecurityNotificationRule(ctx, \"vulnerability_rule\", \u0026datadog.SecurityNotificationRuleArgs{\n\t\t\tName: pulumi.String(\"My vulnerability notification rule\"),\n\t\t\tSelectors: datadog.SecurityNotificationRuleSelectorsArgs{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"triggerSource\": \"security_findings\",\n\t\t\t\t\t\"ruleTypes\": []string{\n\t\t\t\t\t\t\"application_library_vulnerability\",\n\t\t\t\t\t\t\"identity_risk\",\n\t\t\t\t\t},\n\t\t\t\t\t\"severities\": []string{\n\t\t\t\t\t\t\"critical\",\n\t\t\t\t\t\t\"high\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTimeAggregation: pulumi.Int(36000),\n\t\t\tTargets: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"@john@email.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SecurityNotificationRule;\nimport com.pulumi.datadog.SecurityNotificationRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var signalRule = new SecurityNotificationRule(\"signalRule\", SecurityNotificationRuleArgs.builder()\n            .name(\"My signal notification rule\")\n            .selectors(SecurityNotificationRuleSelectorsArgs.builder()\n                .triggerSource(\"security_signals\")\n                .ruleTypes(\"workload_security\")\n                .query(\"env:prod\")\n                .build())\n            .enabled(false)\n            .targets(            \n                \"@bob@email.com\",\n                \"@alice@email.com\")\n            .build());\n\n        var vulnerabilityRule = new SecurityNotificationRule(\"vulnerabilityRule\", SecurityNotificationRuleArgs.builder()\n            .name(\"My vulnerability notification rule\")\n            .selectors(SecurityNotificationRuleSelectorsArgs.builder()\n                .triggerSource(\"security_findings\")\n                .ruleTypes(                \n                    \"application_library_vulnerability\",\n                    \"identity_risk\")\n                .severities(                \n                    \"critical\",\n                    \"high\")\n                .build())\n            .timeAggregation(36000)\n            .targets(\"@john@email.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  signalRule:\n    type: datadog:SecurityNotificationRule\n    name: signal_rule\n    properties:\n      name: My signal notification rule\n      selectors:\n        - triggerSource: security_signals\n          ruleTypes:\n            - workload_security\n          query: env:prod\n      enabled: false\n      targets:\n        - '@bob@email.com'\n        - '@alice@email.com'\n  vulnerabilityRule:\n    type: datadog:SecurityNotificationRule\n    name: vulnerability_rule\n    properties:\n      name: My vulnerability notification rule\n      selectors:\n        - triggerSource: security_findings\n          ruleTypes:\n            - application_library_vulnerability\n            - identity_risk\n          severities:\n            - critical\n            - high\n      timeAggregation: 36000\n      targets:\n        - '@john@email.com'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/securityNotificationRule:SecurityNotificationRule signal_rule yq9-t9l-bso\n```\n\n",
            "properties": {
                "createdAt": {
                    "type": "integer",
                    "description": "Indicates when this rule was created.\n"
                },
                "createdByHandle": {
                    "type": "string",
                    "description": "The handle of the rule creator.\n"
                },
                "createdByName": {
                    "type": "string",
                    "description": "The name of the rule creator.\n"
                },
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "modifiedAt": {
                    "type": "integer",
                    "description": "Indicates when this rule was last modified.\n"
                },
                "modifiedByHandle": {
                    "type": "string",
                    "description": "The handle of the rule last modifier.\n"
                },
                "modifiedByName": {
                    "type": "string",
                    "description": "The name of the rule last modifier.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule (must be unique).\n"
                },
                "selectors": {
                    "$ref": "#/types/datadog:index/SecurityNotificationRuleSelectors:SecurityNotificationRuleSelectors",
                    "description": "Defines selectors to filter security issues that generate notifications.\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of handle targets for the notifications. A target must be prefixed with an @. It can be an email address (@bob@email.com), or any installed integration. For example, a Slack recipient (@slack-ops), or a Teams recipient (@teams-ops).\n"
                },
                "timeAggregation": {
                    "type": "integer",
                    "description": "Specifies the time period, in seconds, used to aggregate the notification. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                },
                "version": {
                    "type": "integer",
                    "description": "The rule version (incremented at each update).\n"
                }
            },
            "required": [
                "createdAt",
                "createdByHandle",
                "createdByName",
                "enabled",
                "modifiedAt",
                "modifiedByHandle",
                "modifiedByName",
                "name",
                "selectors",
                "targets",
                "timeAggregation",
                "version"
            ],
            "inputProperties": {
                "enabled": {
                    "type": "boolean",
                    "description": "Indicates whether the rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                },
                "name": {
                    "type": "string",
                    "description": "The name of the rule (must be unique).\n"
                },
                "selectors": {
                    "$ref": "#/types/datadog:index/SecurityNotificationRuleSelectors:SecurityNotificationRuleSelectors",
                    "description": "Defines selectors to filter security issues that generate notifications.\n"
                },
                "targets": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of handle targets for the notifications. A target must be prefixed with an @. It can be an email address (@bob@email.com), or any installed integration. For example, a Slack recipient (@slack-ops), or a Teams recipient (@teams-ops).\n"
                },
                "timeAggregation": {
                    "type": "integer",
                    "description": "Specifies the time period, in seconds, used to aggregate the notification. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                }
            },
            "requiredInputs": [
                "name",
                "selectors",
                "targets"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SecurityNotificationRule resources.\n",
                "properties": {
                    "createdAt": {
                        "type": "integer",
                        "description": "Indicates when this rule was created.\n"
                    },
                    "createdByHandle": {
                        "type": "string",
                        "description": "The handle of the rule creator.\n"
                    },
                    "createdByName": {
                        "type": "string",
                        "description": "The name of the rule creator.\n"
                    },
                    "enabled": {
                        "type": "boolean",
                        "description": "Indicates whether the rule is enabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"
                    },
                    "modifiedAt": {
                        "type": "integer",
                        "description": "Indicates when this rule was last modified.\n"
                    },
                    "modifiedByHandle": {
                        "type": "string",
                        "description": "The handle of the rule last modifier.\n"
                    },
                    "modifiedByName": {
                        "type": "string",
                        "description": "The name of the rule last modifier.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "The name of the rule (must be unique).\n"
                    },
                    "selectors": {
                        "$ref": "#/types/datadog:index/SecurityNotificationRuleSelectors:SecurityNotificationRuleSelectors",
                        "description": "Defines selectors to filter security issues that generate notifications.\n"
                    },
                    "targets": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The list of handle targets for the notifications. A target must be prefixed with an @. It can be an email address (@bob@email.com), or any installed integration. For example, a Slack recipient (@slack-ops), or a Teams recipient (@teams-ops).\n"
                    },
                    "timeAggregation": {
                        "type": "integer",
                        "description": "Specifies the time period, in seconds, used to aggregate the notification. Defaults to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e.\n"
                    },
                    "version": {
                        "type": "integer",
                        "description": "The rule version (incremented at each update).\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/sensitiveDataScannerGroup:SensitiveDataScannerGroup": {
            "description": "Provides a Sensitive Data Scanner group resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new sensitive_data_scanner_group resource\nconst mygroup = new datadog.SensitiveDataScannerGroup(\"mygroup\", {\n    name: \"My new scanning group\",\n    description: \"A relevant description\",\n    filter: {\n        query: \"service:my-service\",\n    },\n    isEnabled: true,\n    productLists: [\n        \"apm\",\n        \"logs\",\n    ],\n    samplings: [\n        {\n            product: \"apm\",\n            rate: 100,\n        },\n        {\n            product: \"logs\",\n            rate: 10,\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new sensitive_data_scanner_group resource\nmygroup = datadog.SensitiveDataScannerGroup(\"mygroup\",\n    name=\"My new scanning group\",\n    description=\"A relevant description\",\n    filter={\n        \"query\": \"service:my-service\",\n    },\n    is_enabled=True,\n    product_lists=[\n        \"apm\",\n        \"logs\",\n    ],\n    samplings=[\n        {\n            \"product\": \"apm\",\n            \"rate\": 100,\n        },\n        {\n            \"product\": \"logs\",\n            \"rate\": 10,\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new sensitive_data_scanner_group resource\n    var mygroup = new Datadog.SensitiveDataScannerGroup(\"mygroup\", new()\n    {\n        Name = \"My new scanning group\",\n        Description = \"A relevant description\",\n        Filter = new Datadog.Inputs.SensitiveDataScannerGroupFilterArgs\n        {\n            Query = \"service:my-service\",\n        },\n        IsEnabled = true,\n        ProductLists = new[]\n        {\n            \"apm\",\n            \"logs\",\n        },\n        Samplings = new[]\n        {\n            new Datadog.Inputs.SensitiveDataScannerGroupSamplingArgs\n            {\n                Product = \"apm\",\n                Rate = 100,\n            },\n            new Datadog.Inputs.SensitiveDataScannerGroupSamplingArgs\n            {\n                Product = \"logs\",\n                Rate = 10,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new sensitive_data_scanner_group resource\n\t\t_, err := datadog.NewSensitiveDataScannerGroup(ctx, \"mygroup\", \u0026datadog.SensitiveDataScannerGroupArgs{\n\t\t\tName:        pulumi.String(\"My new scanning group\"),\n\t\t\tDescription: pulumi.String(\"A relevant description\"),\n\t\t\tFilter: \u0026datadog.SensitiveDataScannerGroupFilterArgs{\n\t\t\t\tQuery: pulumi.String(\"service:my-service\"),\n\t\t\t},\n\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\tProductLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"apm\"),\n\t\t\t\tpulumi.String(\"logs\"),\n\t\t\t},\n\t\t\tSamplings: datadog.SensitiveDataScannerGroupSamplingArray{\n\t\t\t\t\u0026datadog.SensitiveDataScannerGroupSamplingArgs{\n\t\t\t\t\tProduct: pulumi.String(\"apm\"),\n\t\t\t\t\tRate:    pulumi.Float64(100),\n\t\t\t\t},\n\t\t\t\t\u0026datadog.SensitiveDataScannerGroupSamplingArgs{\n\t\t\t\t\tProduct: pulumi.String(\"logs\"),\n\t\t\t\t\tRate:    pulumi.Float64(10),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SensitiveDataScannerGroup;\nimport com.pulumi.datadog.SensitiveDataScannerGroupArgs;\nimport com.pulumi.datadog.inputs.SensitiveDataScannerGroupFilterArgs;\nimport com.pulumi.datadog.inputs.SensitiveDataScannerGroupSamplingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new sensitive_data_scanner_group resource\n        var mygroup = new SensitiveDataScannerGroup(\"mygroup\", SensitiveDataScannerGroupArgs.builder()\n            .name(\"My new scanning group\")\n            .description(\"A relevant description\")\n            .filter(SensitiveDataScannerGroupFilterArgs.builder()\n                .query(\"service:my-service\")\n                .build())\n            .isEnabled(true)\n            .productLists(            \n                \"apm\",\n                \"logs\")\n            .samplings(            \n                SensitiveDataScannerGroupSamplingArgs.builder()\n                    .product(\"apm\")\n                    .rate(100.0)\n                    .build(),\n                SensitiveDataScannerGroupSamplingArgs.builder()\n                    .product(\"logs\")\n                    .rate(10.0)\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new sensitive_data_scanner_group resource\n  mygroup:\n    type: datadog:SensitiveDataScannerGroup\n    properties:\n      name: My new scanning group\n      description: A relevant description\n      filter:\n        query: service:my-service\n      isEnabled: true\n      productLists:\n        - apm\n        - logs\n      samplings:\n        - product: apm\n          rate: 100\n        - product: logs\n          rate: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/sensitiveDataScannerGroup:SensitiveDataScannerGroup new_list \"\u003cgroup_id\u003e\"\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description of the Datadog scanning group.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/SensitiveDataScannerGroupFilter:SensitiveDataScannerGroupFilter",
                    "description": "Filter object the scanning group applies.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Whether or not the scanning group is enabled. If the group doesn't contain any rule or if all the rules in it are disabled, the group is force-disabled by our backend\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Datadog scanning group.\n"
                },
                "productLists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of products the scanning group applies. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apm`\" pulumi-lang-dotnet=\"`Apm`\" pulumi-lang-go=\"`apm`\" pulumi-lang-python=\"`apm`\" pulumi-lang-yaml=\"`apm`\" pulumi-lang-java=\"`apm`\"\u003e`apm`\u003c/span\u003e.\n"
                },
                "samplings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SensitiveDataScannerGroupSampling:SensitiveDataScannerGroupSampling"
                    },
                    "description": "List of sampling configurations per product type for the scanning group.\n"
                }
            },
            "required": [
                "filter",
                "isEnabled",
                "name",
                "productLists"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "Description of the Datadog scanning group.\n"
                },
                "filter": {
                    "$ref": "#/types/datadog:index/SensitiveDataScannerGroupFilter:SensitiveDataScannerGroupFilter",
                    "description": "Filter object the scanning group applies.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Whether or not the scanning group is enabled. If the group doesn't contain any rule or if all the rules in it are disabled, the group is force-disabled by our backend\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the Datadog scanning group.\n"
                },
                "productLists": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of products the scanning group applies. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apm`\" pulumi-lang-dotnet=\"`Apm`\" pulumi-lang-go=\"`apm`\" pulumi-lang-python=\"`apm`\" pulumi-lang-yaml=\"`apm`\" pulumi-lang-java=\"`apm`\"\u003e`apm`\u003c/span\u003e.\n"
                },
                "samplings": {
                    "type": "array",
                    "items": {
                        "$ref": "#/types/datadog:index/SensitiveDataScannerGroupSampling:SensitiveDataScannerGroupSampling"
                    },
                    "description": "List of sampling configurations per product type for the scanning group.\n"
                }
            },
            "requiredInputs": [
                "filter",
                "isEnabled",
                "name",
                "productLists"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SensitiveDataScannerGroup resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "Description of the Datadog scanning group.\n"
                    },
                    "filter": {
                        "$ref": "#/types/datadog:index/SensitiveDataScannerGroupFilter:SensitiveDataScannerGroupFilter",
                        "description": "Filter object the scanning group applies.\n"
                    },
                    "isEnabled": {
                        "type": "boolean",
                        "description": "Whether or not the scanning group is enabled. If the group doesn't contain any rule or if all the rules in it are disabled, the group is force-disabled by our backend\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the Datadog scanning group.\n"
                    },
                    "productLists": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of products the scanning group applies. Valid values are \u003cspan pulumi-lang-nodejs=\"`logs`\" pulumi-lang-dotnet=\"`Logs`\" pulumi-lang-go=\"`logs`\" pulumi-lang-python=\"`logs`\" pulumi-lang-yaml=\"`logs`\" pulumi-lang-java=\"`logs`\"\u003e`logs`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`rum`\" pulumi-lang-dotnet=\"`Rum`\" pulumi-lang-go=\"`rum`\" pulumi-lang-python=\"`rum`\" pulumi-lang-yaml=\"`rum`\" pulumi-lang-java=\"`rum`\"\u003e`rum`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`events`\" pulumi-lang-dotnet=\"`Events`\" pulumi-lang-go=\"`events`\" pulumi-lang-python=\"`events`\" pulumi-lang-yaml=\"`events`\" pulumi-lang-java=\"`events`\"\u003e`events`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`apm`\" pulumi-lang-dotnet=\"`Apm`\" pulumi-lang-go=\"`apm`\" pulumi-lang-python=\"`apm`\" pulumi-lang-yaml=\"`apm`\" pulumi-lang-java=\"`apm`\"\u003e`apm`\u003c/span\u003e.\n"
                    },
                    "samplings": {
                        "type": "array",
                        "items": {
                            "$ref": "#/types/datadog:index/SensitiveDataScannerGroupSampling:SensitiveDataScannerGroupSampling"
                        },
                        "description": "List of sampling configurations per product type for the scanning group.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/sensitiveDataScannerGroupOrder:SensitiveDataScannerGroupOrder": {
            "description": "Provides a Datadog Sensitive Data Scanner Group Order API resource. This can be used to manage the order of Datadog Sensitive Data Scanner Groups.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Create new sensitive_data_scanner_group_order resource\nconst mygrouporder = new datadog.SensitiveDataScannerGroupOrder(\"mygrouporder\", {groupIds: [\n    \"group-id-1\",\n    \"group-id-2\",\n    \"group-id-3\",\n]});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Create new sensitive_data_scanner_group_order resource\nmygrouporder = datadog.SensitiveDataScannerGroupOrder(\"mygrouporder\", group_ids=[\n    \"group-id-1\",\n    \"group-id-2\",\n    \"group-id-3\",\n])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Create new sensitive_data_scanner_group_order resource\n    var mygrouporder = new Datadog.SensitiveDataScannerGroupOrder(\"mygrouporder\", new()\n    {\n        GroupIds = new[]\n        {\n            \"group-id-1\",\n            \"group-id-2\",\n            \"group-id-3\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create new sensitive_data_scanner_group_order resource\n\t\t_, err := datadog.NewSensitiveDataScannerGroupOrder(ctx, \"mygrouporder\", \u0026datadog.SensitiveDataScannerGroupOrderArgs{\n\t\t\tGroupIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"group-id-1\"),\n\t\t\t\tpulumi.String(\"group-id-2\"),\n\t\t\t\tpulumi.String(\"group-id-3\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.SensitiveDataScannerGroupOrder;\nimport com.pulumi.datadog.SensitiveDataScannerGroupOrderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create new sensitive_data_scanner_group_order resource\n        var mygrouporder = new SensitiveDataScannerGroupOrder(\"mygrouporder\", SensitiveDataScannerGroupOrderArgs.builder()\n            .groupIds(            \n                \"group-id-1\",\n                \"group-id-2\",\n                \"group-id-3\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create new sensitive_data_scanner_group_order resource\n  mygrouporder:\n    type: datadog:SensitiveDataScannerGroupOrder\n    properties:\n      groupIds:\n        - group-id-1\n        - group-id-2\n        - group-id-3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/sensitiveDataScannerGroupOrder:SensitiveDataScannerGroupOrder mygrouporder order\n```\n\n",
            "properties": {
                "groupIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of Sensitive Data Scanner group IDs, in order. Logs are tested against the query filter of each index one by one following the order of the list.\n"
                }
            },
            "required": [
                "groupIds"
            ],
            "inputProperties": {
                "groupIds": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "The list of Sensitive Data Scanner group IDs, in order. Logs are tested against the query filter of each index one by one following the order of the list.\n"
                }
            },
            "requiredInputs": [
                "groupIds"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SensitiveDataScannerGroupOrder resources.\n",
                "properties": {
                    "groupIds": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The list of Sensitive Data Scanner group IDs, in order. Logs are tested against the query filter of each index one by one following the order of the list.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/sensitiveDataScannerRule:SensitiveDataScannerRule": {
            "description": "Provides a Datadog SensitiveDataScannerRule resource. This can be used to create and manage Datadog sensitive_data_scanner_rule. Setting the \u003cspan pulumi-lang-nodejs=\"`createBeforeDestroy`\" pulumi-lang-dotnet=\"`CreateBeforeDestroy`\" pulumi-lang-go=\"`createBeforeDestroy`\" pulumi-lang-python=\"`create_before_destroy`\" pulumi-lang-yaml=\"`createBeforeDestroy`\" pulumi-lang-java=\"`createBeforeDestroy`\"\u003e`createBeforeDestroy`\u003c/span\u003e lifecycle Meta-argument to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e is highly recommended if modifying the \u003cspan pulumi-lang-nodejs=\"`includedKeywordConfiguration`\" pulumi-lang-dotnet=\"`IncludedKeywordConfiguration`\" pulumi-lang-go=\"`includedKeywordConfiguration`\" pulumi-lang-python=\"`included_keyword_configuration`\" pulumi-lang-yaml=\"`includedKeywordConfiguration`\" pulumi-lang-java=\"`includedKeywordConfiguration`\"\u003e`includedKeywordConfiguration`\u003c/span\u003e field to avoid unexpectedly disabling Sensitive Data Scanner groups.\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/sensitiveDataScannerRule:SensitiveDataScannerRule new_list \"\u003crule_id\u003e\"\n```\n\n",
            "properties": {
                "description": {
                    "type": "string",
                    "description": "Description of the rule.\n"
                },
                "excludedNamespaces": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Attributes excluded from the scan. If namespaces is provided, it has to be a sub-path of the namespaces array.\n"
                },
                "groupId": {
                    "type": "string",
                    "description": "Id of the scanning group the rule belongs to.\n"
                },
                "includedKeywordConfiguration": {
                    "$ref": "#/types/datadog:index/SensitiveDataScannerRuleIncludedKeywordConfiguration:SensitiveDataScannerRuleIncludedKeywordConfiguration",
                    "description": "Object defining a set of keywords and a number of characters that help reduce noise. You can provide a list of keywords you would like to check within a defined proximity of the matching pattern. If any of the keywords are found within the proximity check then the match is kept. If none are found, the match is discarded. If the rule has the \u003cspan pulumi-lang-nodejs=\"`standardPatternId`\" pulumi-lang-dotnet=\"`StandardPatternId`\" pulumi-lang-go=\"`standardPatternId`\" pulumi-lang-python=\"`standard_pattern_id`\" pulumi-lang-yaml=\"`standardPatternId`\" pulumi-lang-java=\"`standardPatternId`\"\u003e`standardPatternId`\u003c/span\u003e field, then discarding this field will apply the recommended keywords. Setting the \u003cspan pulumi-lang-nodejs=\"`createBeforeDestroy`\" pulumi-lang-dotnet=\"`CreateBeforeDestroy`\" pulumi-lang-go=\"`createBeforeDestroy`\" pulumi-lang-python=\"`create_before_destroy`\" pulumi-lang-yaml=\"`createBeforeDestroy`\" pulumi-lang-java=\"`createBeforeDestroy`\"\u003e`createBeforeDestroy`\u003c/span\u003e lifecycle Meta-argument to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e is highly recommended if modifying this field to avoid unexpectedly disabling Sensitive Data Scanner groups.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Whether or not the rule is enabled.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the rule.\n"
                },
                "namespaces": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Attributes included in the scan. If namespaces is empty or missing, all attributes except\u003cspan pulumi-lang-nodejs=\" excludedNamespaces \" pulumi-lang-dotnet=\" ExcludedNamespaces \" pulumi-lang-go=\" excludedNamespaces \" pulumi-lang-python=\" excluded_namespaces \" pulumi-lang-yaml=\" excludedNamespaces \" pulumi-lang-java=\" excludedNamespaces \"\u003e excludedNamespaces \u003c/span\u003eare scanned. If both are missing the whole event is scanned.\n"
                },
                "pattern": {
                    "type": "string",
                    "description": "Not included if there is a relationship to a standard pattern.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority level of the rule (optional). Used to order sensitive data discovered in the sds summary page. It must be between 1 and 5 (1 being the most important).\n"
                },
                "standardPatternId": {
                    "type": "string",
                    "description": "Id of the standard pattern the rule refers to. If provided, then pattern must not be provided.\n"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tags.\n"
                },
                "textReplacement": {
                    "$ref": "#/types/datadog:index/SensitiveDataScannerRuleTextReplacement:SensitiveDataScannerRuleTextReplacement",
                    "description": "Object describing how the scanned event will be replaced. Defaults to `type: none`\n"
                }
            },
            "required": [
                "groupId",
                "includedKeywordConfiguration",
                "priority"
            ],
            "inputProperties": {
                "description": {
                    "type": "string",
                    "description": "Description of the rule.\n"
                },
                "excludedNamespaces": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Attributes excluded from the scan. If namespaces is provided, it has to be a sub-path of the namespaces array.\n"
                },
                "groupId": {
                    "type": "string",
                    "description": "Id of the scanning group the rule belongs to.\n",
                    "willReplaceOnChanges": true
                },
                "includedKeywordConfiguration": {
                    "$ref": "#/types/datadog:index/SensitiveDataScannerRuleIncludedKeywordConfiguration:SensitiveDataScannerRuleIncludedKeywordConfiguration",
                    "description": "Object defining a set of keywords and a number of characters that help reduce noise. You can provide a list of keywords you would like to check within a defined proximity of the matching pattern. If any of the keywords are found within the proximity check then the match is kept. If none are found, the match is discarded. If the rule has the \u003cspan pulumi-lang-nodejs=\"`standardPatternId`\" pulumi-lang-dotnet=\"`StandardPatternId`\" pulumi-lang-go=\"`standardPatternId`\" pulumi-lang-python=\"`standard_pattern_id`\" pulumi-lang-yaml=\"`standardPatternId`\" pulumi-lang-java=\"`standardPatternId`\"\u003e`standardPatternId`\u003c/span\u003e field, then discarding this field will apply the recommended keywords. Setting the \u003cspan pulumi-lang-nodejs=\"`createBeforeDestroy`\" pulumi-lang-dotnet=\"`CreateBeforeDestroy`\" pulumi-lang-go=\"`createBeforeDestroy`\" pulumi-lang-python=\"`create_before_destroy`\" pulumi-lang-yaml=\"`createBeforeDestroy`\" pulumi-lang-java=\"`createBeforeDestroy`\"\u003e`createBeforeDestroy`\u003c/span\u003e lifecycle Meta-argument to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e is highly recommended if modifying this field to avoid unexpectedly disabling Sensitive Data Scanner groups.\n"
                },
                "isEnabled": {
                    "type": "boolean",
                    "description": "Whether or not the rule is enabled.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name of the rule.\n"
                },
                "namespaces": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "Attributes included in the scan. If namespaces is empty or missing, all attributes except\u003cspan pulumi-lang-nodejs=\" excludedNamespaces \" pulumi-lang-dotnet=\" ExcludedNamespaces \" pulumi-lang-go=\" excludedNamespaces \" pulumi-lang-python=\" excluded_namespaces \" pulumi-lang-yaml=\" excludedNamespaces \" pulumi-lang-java=\" excludedNamespaces \"\u003e excludedNamespaces \u003c/span\u003eare scanned. If both are missing the whole event is scanned.\n"
                },
                "pattern": {
                    "type": "string",
                    "description": "Not included if there is a relationship to a standard pattern.\n"
                },
                "priority": {
                    "type": "integer",
                    "description": "Priority level of the rule (optional). Used to order sensitive data discovered in the sds summary page. It must be between 1 and 5 (1 being the most important).\n"
                },
                "standardPatternId": {
                    "type": "string",
                    "description": "Id of the standard pattern the rule refers to. If provided, then pattern must not be provided.\n",
                    "willReplaceOnChanges": true
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "List of tags.\n"
                },
                "textReplacement": {
                    "$ref": "#/types/datadog:index/SensitiveDataScannerRuleTextReplacement:SensitiveDataScannerRuleTextReplacement",
                    "description": "Object describing how the scanned event will be replaced. Defaults to `type: none`\n"
                }
            },
            "requiredInputs": [
                "groupId"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering SensitiveDataScannerRule resources.\n",
                "properties": {
                    "description": {
                        "type": "string",
                        "description": "Description of the rule.\n"
                    },
                    "excludedNamespaces": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Attributes excluded from the scan. If namespaces is provided, it has to be a sub-path of the namespaces array.\n"
                    },
                    "groupId": {
                        "type": "string",
                        "description": "Id of the scanning group the rule belongs to.\n",
                        "willReplaceOnChanges": true
                    },
                    "includedKeywordConfiguration": {
                        "$ref": "#/types/datadog:index/SensitiveDataScannerRuleIncludedKeywordConfiguration:SensitiveDataScannerRuleIncludedKeywordConfiguration",
                        "description": "Object defining a set of keywords and a number of characters that help reduce noise. You can provide a list of keywords you would like to check within a defined proximity of the matching pattern. If any of the keywords are found within the proximity check then the match is kept. If none are found, the match is discarded. If the rule has the \u003cspan pulumi-lang-nodejs=\"`standardPatternId`\" pulumi-lang-dotnet=\"`StandardPatternId`\" pulumi-lang-go=\"`standardPatternId`\" pulumi-lang-python=\"`standard_pattern_id`\" pulumi-lang-yaml=\"`standardPatternId`\" pulumi-lang-java=\"`standardPatternId`\"\u003e`standardPatternId`\u003c/span\u003e field, then discarding this field will apply the recommended keywords. Setting the \u003cspan pulumi-lang-nodejs=\"`createBeforeDestroy`\" pulumi-lang-dotnet=\"`CreateBeforeDestroy`\" pulumi-lang-go=\"`createBeforeDestroy`\" pulumi-lang-python=\"`create_before_destroy`\" pulumi-lang-yaml=\"`createBeforeDestroy`\" pulumi-lang-java=\"`createBeforeDestroy`\"\u003e`createBeforeDestroy`\u003c/span\u003e lifecycle Meta-argument to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e is highly recommended if modifying this field to avoid unexpectedly disabling Sensitive Data Scanner groups.\n"
                    },
                    "isEnabled": {
                        "type": "boolean",
                        "description": "Whether or not the rule is enabled.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the rule.\n"
                    },
                    "namespaces": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "Attributes included in the scan. If namespaces is empty or missing, all attributes except\u003cspan pulumi-lang-nodejs=\" excludedNamespaces \" pulumi-lang-dotnet=\" ExcludedNamespaces \" pulumi-lang-go=\" excludedNamespaces \" pulumi-lang-python=\" excluded_namespaces \" pulumi-lang-yaml=\" excludedNamespaces \" pulumi-lang-java=\" excludedNamespaces \"\u003e excludedNamespaces \u003c/span\u003eare scanned. If both are missing the whole event is scanned.\n"
                    },
                    "pattern": {
                        "type": "string",
                        "description": "Not included if there is a relationship to a standard pattern.\n"
                    },
                    "priority": {
                        "type": "integer",
                        "description": "Priority level of the rule (optional). Used to order sensitive data discovered in the sds summary page. It must be between 1 and 5 (1 being the most important).\n"
                    },
                    "standardPatternId": {
                        "type": "string",
                        "description": "Id of the standard pattern the rule refers to. If provided, then pattern must not be provided.\n",
                        "willReplaceOnChanges": true
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "List of tags.\n"
                    },
                    "textReplacement": {
                        "$ref": "#/types/datadog:index/SensitiveDataScannerRuleTextReplacement:SensitiveDataScannerRuleTextReplacement",
                        "description": "Object describing how the scanned event will be replaced. Defaults to `type: none`\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/serviceAccount:ServiceAccount": {
            "description": "Provides a Datadog service account resource. This can be used to create and manage Datadog service accounts.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Source a role\nconst roRole = datadog.getRole({\n    filter: \"Datadog Read Only Role\",\n});\n// Create a new Datadog service account\nconst bar = new datadog.ServiceAccount(\"bar\", {\n    email: \"new@example.com\",\n    name: \"Service Account Bar\",\n    roles: [roRole.then(roRole =\u003e roRole.id)],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Source a role\nro_role = datadog.get_role(filter=\"Datadog Read Only Role\")\n# Create a new Datadog service account\nbar = datadog.ServiceAccount(\"bar\",\n    email=\"new@example.com\",\n    name=\"Service Account Bar\",\n    roles=[ro_role.id])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Source a role\n    var roRole = Datadog.GetRole.Invoke(new()\n    {\n        Filter = \"Datadog Read Only Role\",\n    });\n\n    // Create a new Datadog service account\n    var bar = new Datadog.ServiceAccount(\"bar\", new()\n    {\n        Email = \"new@example.com\",\n        Name = \"Service Account Bar\",\n        Roles = new[]\n        {\n            roRole.Apply(getRoleResult =\u003e getRoleResult.Id),\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Source a role\n\t\troRole, err := datadog.LookupRole(ctx, \u0026datadog.LookupRoleArgs{\n\t\t\tFilter: \"Datadog Read Only Role\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a new Datadog service account\n\t\t_, err = datadog.NewServiceAccount(ctx, \"bar\", \u0026datadog.ServiceAccountArgs{\n\t\t\tEmail: pulumi.String(\"new@example.com\"),\n\t\t\tName:  pulumi.String(\"Service Account Bar\"),\n\t\t\tRoles: pulumi.StringArray{\n\t\t\t\tpulumi.String(pulumi.String(roRole.Id)),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DatadogFunctions;\nimport com.pulumi.datadog.inputs.GetRoleArgs;\nimport com.pulumi.datadog.ServiceAccount;\nimport com.pulumi.datadog.ServiceAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Source a role\n        final var roRole = DatadogFunctions.getRole(GetRoleArgs.builder()\n            .filter(\"Datadog Read Only Role\")\n            .build());\n\n        // Create a new Datadog service account\n        var bar = new ServiceAccount(\"bar\", ServiceAccountArgs.builder()\n            .email(\"new@example.com\")\n            .name(\"Service Account Bar\")\n            .roles(roRole.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create a new Datadog service account\n  bar:\n    type: datadog:ServiceAccount\n    properties:\n      email: new@example.com\n      name: Service Account Bar\n      roles:\n        - ${roRole.id}\nvariables:\n  # Source a role\n  roRole:\n    fn::invoke:\n      function: datadog:getRole\n      arguments:\n        filter: Datadog Read Only Role\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import datadog:index/serviceAccount:ServiceAccount example_sa 6f1b44c0-30b2-11eb-86bc-279f7c1ebaa4\n```\n\n",
            "properties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Whether the service account is disabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "email": {
                    "type": "string",
                    "description": "Email of the associated user.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name for the service account.\n"
                },
                "roles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of role IDs to assign to the service account.\n"
                }
            },
            "required": [
                "disabled",
                "email",
                "roles"
            ],
            "inputProperties": {
                "disabled": {
                    "type": "boolean",
                    "description": "Whether the service account is disabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                },
                "email": {
                    "type": "string",
                    "description": "Email of the associated user.\n"
                },
                "name": {
                    "type": "string",
                    "description": "Name for the service account.\n"
                },
                "roles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "description": "A list of role IDs to assign to the service account.\n"
                }
            },
            "requiredInputs": [
                "email"
            ],
            "stateInputs": {
                "description": "Input properties used for looking up and filtering ServiceAccount resources.\n",
                "properties": {
                    "disabled": {
                        "type": "boolean",
                        "description": "Whether the service account is disabled. Defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"
                    },
                    "email": {
                        "type": "string",
                        "description": "Email of the associated user.\n"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name for the service account.\n"
                    },
                    "roles": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "A list of role IDs to assign to the service account.\n"
                    }
                },
                "type": "object"
            }
        },
        "datadog:index/serviceAccountApplicationKey:ServiceAccountApplicationKey": {
            "description": "Provides a Datadog \u003cspan pulumi-lang-nodejs=\"`serviceAccountApplicationKey`\" pulumi-lang-dotnet=\"`ServiceAccountApplicationKey`\" pulumi-lang-go=\"`serviceAccountApplicationKey`\" pulumi-lang-python=\"`service_account_application_key`\" pulumi-lang-yaml=\"`serviceAccountApplicationKey`\" pulumi-lang-java=\"`serviceAccountApplicationKey`\"\u003e`serviceAccountApplicationKey`\u003c/span\u003e resource. This can be used to create and manage Datadog service account application keys.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as datadog from \"@pulumi/datadog\";\n\n// Source the permissions for scoped keys\nconst ddPerms = datadog.getPermissions({});\n// Create an unrestricted Service Account Application Key\n// This key inherits all permissions of the service account that owns the key\nconst unrestrictedKey = new datadog.ServiceAccountApplicationKey(\"unrestricted_key\", {\n    serviceAccountId: \"00000000-0000-1234-0000-000000000000\",\n    name: \"Unrestricted Service Account Key\",\n});\n// Create a scoped Service Account Application Key for monitor management\nconst monitorManagementKey = new datadog.ServiceAccountApplicationKey(\"monitor_management_key\", {\n    serviceAccountId: \"00000000-0000-1234-0000-000000000000\",\n    name: \"Monitor Management Service Account Key\",\n    scopes: [\n        ddPerms.then(ddPerms =\u003e ddPerms.permissions?.monitorsRead),\n        ddPerms.then(ddPerms =\u003e ddPerms.permissions?.monitorsWrite),\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_datadog as datadog\n\n# Source the permissions for scoped keys\ndd_perms = datadog.get_permissions()\n# Create an unrestricted Service Account Application Key\n# This key inherits all permissions of the service account that owns the key\nunrestricted_key = datadog.ServiceAccountApplicationKey(\"unrestricted_key\",\n    service_account_id=\"00000000-0000-1234-0000-000000000000\",\n    name=\"Unrestricted Service Account Key\")\n# Create a scoped Service Account Application Key for monitor management\nmonitor_management_key = datadog.ServiceAccountApplicationKey(\"monitor_management_key\",\n    service_account_id=\"00000000-0000-1234-0000-000000000000\",\n    name=\"Monitor Management Service Account Key\",\n    scopes=[\n        dd_perms.permissions[\"monitorsRead\"],\n        dd_perms.permissions[\"monitorsWrite\"],\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Datadog = Pulumi.Datadog;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Source the permissions for scoped keys\n    var ddPerms = Datadog.GetPermissions.Invoke();\n\n    // Create an unrestricted Service Account Application Key\n    // This key inherits all permissions of the service account that owns the key\n    var unrestrictedKey = new Datadog.ServiceAccountApplicationKey(\"unrestricted_key\", new()\n    {\n        ServiceAccountId = \"00000000-0000-1234-0000-000000000000\",\n        Name = \"Unrestricted Service Account Key\",\n    });\n\n    // Create a scoped Service Account Application Key for monitor management\n    var monitorManagementKey = new Datadog.ServiceAccountApplicationKey(\"monitor_management_key\", new()\n    {\n        ServiceAccountId = \"00000000-0000-1234-0000-000000000000\",\n        Name = \"Monitor Management Service Account Key\",\n        Scopes = new[]\n        {\n            ddPerms.Apply(getPermissionsResult =\u003e getPermissionsResult.Permissions?.MonitorsRead),\n            ddPerms.Apply(getPermissionsResult =\u003e getPermissionsResult.Permissions?.MonitorsWrite),\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Source the permissions for scoped keys\n\t\tddPerms, err := datadog.GetPermissions(ctx, \u0026datadog.GetPermissionsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create an unrestricted Service Account Application Key\n\t\t// This key inherits all permissions of the service account that owns the key\n\t\t_, err = datadog.NewServiceAccountApplicationKey(ctx, \"unrestricted_key\", \u0026datadog.ServiceAccountApplicationKeyArgs{\n\t\t\tServiceAccountId: pulumi.String(\"00000000-0000-1234-0000-000000000000\"),\n\t\t\tName:             pulumi.String(\"Unrestricted Service Account Key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create a scoped Service Account Application Key for monitor management\n\t\t_, err = datadog.NewServiceAccountApplicationKey(ctx, \"monitor_management_key\", \u0026datadog.ServiceAccountApplicationKeyArgs{\n\t\t\tServiceAccountId: pulumi.String(\"00000000-0000-1234-0000-000000000000\"),\n\t\t\tName:             pulumi.String(\"Monitor Management Service Account Key\"),\n\t\t\tScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(pulumi.String(ddPerms.Permissions.MonitorsRead)),\n\t\t\t\tpulumi.String(pulumi.String(ddPerms.Permissions.MonitorsWrite)),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.datadog.DatadogFunctions;\nimport com.pulumi.datadog.inputs.GetPermissionsArgs;\nimport com.pulumi.datadog.ServiceAccountApplicationKey;\nimport com.pulumi.datadog.ServiceAccountApplicationKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Source the permissions for scoped keys\n        final var ddPerms = DatadogFunctions.getPermissions(GetPermissionsArgs.builder()\n            .build());\n\n        // Create an unrestricted Service Account Application Key\n        // This key inherits all permissions of the service account that owns the key\n        var unrestrictedKey = new ServiceAccountApplicationKey(\"unrestrictedKey\", ServiceAccountApplicationKeyArgs.builder()\n            .serviceAccountId(\"00000000-0000-1234-0000-000000000000\")\n            .name(\"Unrestricted Service Account Key\")\n            .build());\n\n        // Create a scoped Service Account Application Key for monitor management\n        var monitorManagementKey = new ServiceAccountApplicationKey(\"monitorManagementKey\", ServiceAccountApplicationKeyArgs.builder()\n            .serviceAccountId(\"00000000-0000-1234-0000-000000000000\")\n            .name(\"Monitor Management Service Account Key\")\n            .scopes(            \n                ddPerms.permissions().monitorsRead(),\n                ddPerms.permissions().monitorsWrite())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create an unrestricted Service Account Application Key\n  # This key inherits all permissions of the service account that owns the key\n  unrestrictedKey:\n    type: datadog:ServiceAccountApplicationKey\n    name: unrestricted_key\n    properties:\n      ser